Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: zoro86 от Января 19, 2010, 09:32



Название: Как убрать TitleBar в QDialog
Отправлено: zoro86 от Января 19, 2010, 09:32
У меня есть MDI приложение в котором будет несколько Диалоговых окон... MDI запускается в режиме FullScreen, необходимо убрать TitleBar-ы у диалогов чтобы можно просматривать только содержимое диологов... так как диалоги в режими FullScreen не запускаются...


Название: Re: Как убрать TitleBar в QDialog
Отправлено: Akaiten от Января 19, 2010, 09:48
Конструктор диалога имеет вид:
Код
C++ (Qt)
QDialog::QDialog ( QWidget * parent = 0, Qt::WindowFlags f = 0 )
 
Указать Qt::WindowFlags вот то, что тебе необходимо. Попробуй задать, например, Qt::Popup или Qt::FramelessWindowHint, или Qt::CustomizeWindowHint без Qt::WindowTitleHint (добавлено 19.01.2010 13:40) и Qt::WindowSystemMenuHint, Qt::WindowMinimizeButtonHint, Qt::WindowMaximizeButtonHint, Qt::WindowMinMaxButtonsHint, Qt::WindowCloseButtonHint, Qt::WindowContextHelpButtonHint :)




Название: Re: Как убрать TitleBar в QDialog
Отправлено: lit-uriy от Января 19, 2010, 10:05
Быстро поэкспериментировать с флажками можно в примере
%QTDIR%\examples\widgets\windowflags


Название: Re: Как убрать TitleBar в QDialog
Отправлено: zoro86 от Января 19, 2010, 12:52
Я вообще то пробовал так делать...
у меня было так QDialog(parent, Qt::CustomizeWindowHint | Qt::FramelessWindowHint | Qt::WindowSystemMenuHint)

но все равно он там есть буду через QStackedLayout делать..


Название: Re: Как убрать TitleBar в QDialog
Отправлено: Akaiten от Января 19, 2010, 13:33
Понимаешь, что при использовании Qt::WindowSystemMenuHint автоматически появляется title bar (system menu - кнопочки управления окном именно на нём и располагаются), а вообще тебе же дельный совет дали
Быстро поэкспериментировать с флажками можно в примере
%QTDIR%\examples\widgets\windowflags


Название: Re: Как убрать TitleBar в QDialog
Отправлено: zoro86 от Января 19, 2010, 14:43
Попробовал...
FirstDialog::FirstDialog(QWidget *parent):QDialog(parent, Qt::FramelessWindowHint)
QWidget::setWindowFlags(Qt::Popup);

что та не исчезает... может дело в том что диалог в MDI-ке...