PySide и menuBar на MacOSX не отображают никаких пунктов меню из-за именования - PullRequest
4 голосов
/ 14 февраля 2012

Я пытаюсь создать меню с помощью PySide. Это код

def _createMenus(self):
    self._menuBar = QtGui.QMenuBar()
    self.setMenuBar(self._menuBar)
    self._helpMenu = self._menuBar.addMenu("Help")

    self._aboutAction = QtGui.QAction("About", self, statusTip="About", triggered=self._about)
    self._helpMenu.addAction(self._aboutAction)

Этот код не показывает ничего в строке меню, кроме записи "python". Как ни странно, если я изменю «О» в «Aout», то отобразится меню. Есть ли какая-то странно-зависимая странность, о которой я должен знать?

1 Ответ

4 голосов
/ 15 февраля 2012

Элементы меню в Mac OS X могут автоматически перемещаться с помощью Qt в системную строку меню в зависимости от текста действия и / или свойства menuRole (подробности см. QMenuBar в Mac OS X ).

Таким образом, ваш пункт меню «О программе» должен быть первым пунктом в меню приложения.

...