/ / Qt hide мінімізувати, максимізувати і закривати кнопки - qt, приховати, мінімізувати, максимізувати

Qt hide мінімізує, максимізує і закриває кнопки - qt, ховається, мінімізується, максимізується

Ви знаєте, як приховати мінімізацію, максимізацію та закривання кнопок панелі заголовка в Qt. Мені особливо потрібно сховати його на QMainWindow.

Відповіді:

14 за відповідь № 1

Встановити це вікно прапорами Qt::Window | Qt::WindowTitleHint | Qt::CustomizeWindowHint

Зауважте, що на деяких платформах вона веде себе по-різному. Наприклад, у Mac OS X вимикає, (не приховує) кнопки закриття / мінімізація / максимізація


3 для відповіді № 2

Якщо ви використовуєте Qt qml, то, щоб видалити мінімізацію, максимізацію та закриття кнопки, встановіть прапорець біля вікна вікна у файлі main.qml, як показано нижче:

flags: Qt.FramelessWindowHint

2 для відповіді № 3

Це можна досягти, використовуючи eventFilter на події QEvent :: Close з вашого MainWindow

bool MainWindow::eventFilter(QObject *obj, QEvent *event) {

if (event->type() == QEvent::Close) {
event->ignore();
doWhateverYouNeedToDoBeforeClosingTheApplication();
return true;
}
return QMainWindow::eventFilter(obj, event);
}

void MainWindow::doWhateverYouNeedToDoBeforeClosingTheApplication() {
// Do here what ever you need to do
// ...
// ...

// and finally quit
qApp->quit();
}

2 для відповіді № 4

Просто подивіться як це зробити Вікна Прапори Приклад працює!


0 для відповіді № 5

прапори: Qt.Dialog | Qt.WindowCancelButtonHint | Qt.WindowCloseButtonHint

це також працює для вікна елемента

прапори: Qt.Window | Qt.WindowTitleHint