Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: deMax от Апрель 18, 2014, 09:38



Название: [РЕШЕНО] QMenu разместить в заголовке окна
Отправлено: deMax от Апрель 18, 2014, 09:38
Как сделать сабж наиболее красивым способом?

1. Если отключить оформление окна, то как скопировать стандартное обрамление с текущей темы? Хотя бы кнопки скопировать(как это сделанно в Firefox)

2. Можно рисовать на заголовке, но как разместить в нем компонент?


Название: Re: QMenu разместить в заголовке окна
Отправлено: Swa от Апрель 18, 2014, 10:14
У вас есть 2 возможности:
1. Создать окно с флагом Qt::FramelessWindowHint и отрисовать его самостоятельно. Тогда у него не будет стандартных кнопок Свернуть, развернуть, закрыть.
2. Если хотите как в Firefox - то через WINAPI. Почитайте тут (http://stackoverflow.com/questions/7673040/winapi-create-resizable-window-without-title-bar-but-with-minimize-maximize-cl), там 2 ссылки на статьи в первом ответе.


Название: Re: QMenu разместить в заголовке окна
Отправлено: GreatSnake от Апрель 18, 2014, 10:40
Цитировать
QMenu разместить в заголовке окна
Для справки.
Меню куда-то статически поместить нельзя, т.к. это popup-окно.
Разместить можно кнопку, при нажатии на которую будет появляться меню.


Название: Re: QMenu разместить в заголовке окна
Отправлено: deMax от Апрель 18, 2014, 11:58
Swa, спасибо.

Цитировать
Меню куда-то статически поместить нельзя, т.к. это popup-окно.
Ошибся QMenuBar. Кнопку как разместить?