Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: kirill от Март 11, 2009, 09:36



Название: Оформление заголовка диалога
Отправлено: kirill от Март 11, 2009, 09:36
Каким флагом убирается иконка из диалога?
м?


Название: Re: Оформление заголовка диалога
Отправлено: spirit от Март 11, 2009, 09:57
в смысле системное меню окна?


Название: Re: Оформление заголовка диалога
Отправлено: kirill от Март 11, 2009, 12:20
Создаю диалог так

Код:
frmSettings_ = new KSettingsForm(this, Qt::Dialog | Qt::WindowSystemMenuHint);

KSettingsForm наследник QDialog

Так вот иконка слева в углу строки заголовка, где системное меню, всегда остается.

Под виндой.


Название: Re: Оформление заголовка диалога
Отправлено: spirit от Март 11, 2009, 12:40
можно вот так сделать
Цитировать
Qt::WindowTitleHint | Qt::CustomizeWindowHint
но тогда пропадут остальные кнопари. под виндой никак не получится убрать.


Название: Re: Оформление заголовка диалога
Отправлено: kirill от Март 11, 2009, 12:48
Вот же блин...
а в борланде на диалогах не было иконки


Название: Re: Оформление заголовка диалога
Отправлено: sendevent от Март 11, 2009, 20:18
грязный хак ;D :
Код:
setWindowIcon( QIcon( ":/path/2/little/transparent/image.png" ) );
если скармливать пустую (QIcon()) - будет подставлена дефолтная.
UPD:
решение:
Код:
setWindowFlags( Qt::Dialog|Qt::CustomizeWindowHint|Qt::WindowTitleHint );
кнопки закрытия/макс/мин/штоэто - такж добавляются флагами.


Название: Re: Оформление заголовка диалога
Отправлено: Rcus от Март 11, 2009, 21:23
Если хочется поиграться с флагами то есть ./examples/widgets/windowflags.
А в среде GNOME установка упомянутых флагов дает такой результат:


Название: Re: Оформление заголовка диалога
Отправлено: spirit от Март 11, 2009, 21:26
под виндой иконки нет.
зы. этот экзампл и юзал.


Название: Re: Оформление заголовка диалога
Отправлено: kirill от Март 12, 2009, 06:50
решение:
Код:
setWindowFlags( Qt::Dialog|Qt::CustomizeWindowHint|Qt::WindowTitleHint );
кнопки закрытия/макс/мин/штоэто - такж добавляются флагами.

попытка вставить кнопку закрытия
Код:
setWindowFlags( Qt::Dialog|Qt::CustomizeWindowHint|Qt::WindowTitleHint | Qt::WindowCloseButtonHint);

Приводит к появлению кнопки закрытия и иконки.


Название: Re: Оформление заголовка диалога
Отправлено: spirit от Март 12, 2009, 08:49
ага, так и есть. я ж писал, что не получится. :) возможно если заюзать WinAPI,
то может и получится тем более, что ты говорил, что в борланде такое канает.


Название: Re: Оформление заголовка диалога
Отправлено: kirill от Март 12, 2009, 09:05
Не, winapi не надо. будем так жить. с иконкой.