如何使用pyqt和py2app向Mac应用程序添加“关于框”?

时间:2013-09-18 16:31:51

标签: python cocoa pyqt pyqt4 py2app

我正在使用PyQt并使用py2app将我的应用程序打包到Mac上。

如何添加"关于Box"到主菜单:

enter image description here

看起来像这样的例子:

enter image description here

1 个答案:

答案 0 :(得分:2)

要在此处添加约会菜单,您只需将其添加到Help的{​​{1}}子菜单。

menuBar()

问题是应用程序的标题为import sys from PySide import QtGui, QtCore class Window(QtGui.QMainWindow): def __init__(self): super(Window, self).__init__() help_menu = QtGui.QMenu('&Help') about = help_menu.addAction('&About') about.triggered.connect(self.show_about) self.menuBar().addMenu(help_menu) def show_about(self): print 'shown' app = QtGui.QApplication(sys.argv) win = Window() win.show() app.exec_() pythonAbout。要更改它,因为您已经使用了py2app,所以应该查看this question

对于PyQt4,它有点不同。请参阅documentation

两个相关的事情:

  1.   

    不要调用QMainWindow.menuBar()来创建共享菜单栏,因为该菜单栏将QMainWindow作为其父级。您必须创建一个没有父级的菜单栏。

    About python

  2.   

    从Info.plist文件中获取应用程序名称(请参阅下面的注释)。如果未找到此条目,则“应用程序菜单”中不会显示“关于”项目。