Qt: QMainWindow становится владельцем QMenuBar - PullRequest
2 голосов
/ 08 июня 2011

Я хотел бы использовать один экземпляр QMenuBar для упрощения интеграции с Mac OS X, однако в документации говорится

Примечание: QMainWindow берет на себя владение указателем menuBar и удаляет его в соответствующее время.

Как я могу получить все мои QMainWindows для совместного использования одного QMenuBar?Или простой и неудачный ответ «ты не можешь»?

1 Ответ

0 голосов
/ 08 июня 2011

Извините за простое цитирование руководства, но этот вопрос действительно уже описан.

http://doc.qt.nokia.com/latest/qmainwindow.html#menuBar:

Если вы хотите, чтобы все окна в Mac приложение для совместного использования одной строки меню, не используйте эту функцию для ее создания, потому что строка меню, созданная здесь будет иметь этот QMainWindow в качестве родителя. Вместо этого вы должны создать строку меню что нет родителя, которого вы затем может поделиться среди всех Mac окна. Создать панель меню без родителей таким образом:

QMenuBar *menuBar = new QMenuBar(0);

Дополнительная информация о QMenuBar в Mac OS X:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...