У меня есть минимальный пример, подобный этому:
mWidget = new QWidget;
vLayout = new QVBoxLayout;
mLabel = new QLabel;
mLabel->setText("Text");
mLabel->setAlignment(Qt::AlignCenter);
mLabel->setStyleSheet("QLabel { border: 2px solid red; }");
this->setCentralWidget(mWidget);
mWidget->setLayout(vLayout);
vLayout->addWidget(mLabel);
![enter image description here](https://i.stack.imgur.com/UlLpY.png)
Как видно из рисунка выше, кроме central widget
, за красной границей все еще есть какая-то белая граница. Я пытаюсь сделать так, чтобы центральный виджет заполнил все основное окно, чтобы за красной рамкой не было белой границы. Может быть, по-другому сказать, это сделать окно без полей (не знаю, если я ищу окно без полей). Я гуглил, как сделать окно без полей, и попытался setWindowFlags(Qt::FramelessWindowHint)
, но это не то, что я хочу. Я не совсем понимаю, как этого добиться сейчас? Так что же мне стоит посмотреть в теме How to make a borderless window
? Если это так, значит ли это, что я должен вызвать некоторые API Windows, чтобы это работало? Или я должен просто сделать это с некоторыми другими методами Qt?
Надеюсь, что кто-то может дать мне способ или дать мне несколько советов. Спасибо.