Възможно ли е да деактивирате/изтриете бутона за затваряне по подразбиране на QDialogs в горния ляв ъгъл на диалоговия прозорец?
Да се деактивира ли бутонът за затваряне по подразбиране на QDialogs (горен ляв бутон с кръст)?
Отговори (4)
Поне във (вградения) Linux можете да направите това:
setWindowFlags(Qt::Window | Qt::WindowTitleHint | Qt::CustomizeWindowHint);
С това получавам прозорец, който има заглавие, но няма бутони.
person
user3912842
schedule
06.08.2014
Изчистването на WindowCloseButtonHint
в WindowFlags
може да направи това, което искате. Вижте примера тук.
person
Stephen Chu
schedule
01.04.2012
Сега се опитах да костюмизирам прозореца от
setWindowFlags(Qt::CustomizeWindowHint | Qt::WindowTitleHint);
или setWindowFlags(windowFlags() & ~Qt::WindowCloseButtonHint);
. Проблемът е, че и двете идеи все още оставят бутона за максимизиране и когато се максимизира, бутонът за затваряне се появява отново. Някаква идея?
- person Streight; 02.04.2012
Използвайте тази функция за вашия диалог
dlgLobLobLob->setWindowFlags(Qt::Dialog | Qt::Desktop)
person
Mohammad Sheykholeslam
schedule
28.04.2012
Опитах това, но за съжаление не работи - всички бутони (затваряне, максимизиране, минимизиране) са налични. Предполагам, че зависи от работния плот на Unity.
- person Streight; 29.04.2012
Опитайте setWindowFlags(Qt::Dialog | Qt::FramelessWindowHint | Qt::WindowTitleHint);
. Може да искате да проверите Пример за флагове на прозорец и да си поиграете за да видите ефектите от всички възможни комбинации от WindowFlags
person
YamHon.CHAN
schedule
27.03.2013