Próbuję dodać element do paska menu aplikacji prostego przykładu PyQt. Jednak poniższy kod w ogóle nie zmienia paska menu. Jedynym elementem w menu jest "Python". Poniżej znajduje się większość kodu, minus import i tworzenie instancji.Menu PyQtBar Mac OSX Snow Leopard
class MainWindow(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
self.resize(250, 150)
self.setWindowTitle('menubar')
self.modal = False
exit = QtGui.QAction(QtGui.QIcon('images/app_icon.png'), 'Exit', self)
exit.setShortcut('Ctrl+Q')
exit.setStatusTip('Exit application')
self.connect(exit, QtCore.SIGNAL('triggered()'), QtCore.SLOT('close()'))
menubar = self.menuBar()
file = menubar.addMenu('File')
file.addAction(exit)
Próbowałem zostały również stworzenie nowego QMenuBar
i stosując metodę setMenuBar()
ręcznie zamienią się pasek menu.
Jakiekolwiek rażące błędy w powyższym fragmencie?
inną opcją, aby umieścić pasek menu w oknie samo jest jeśli sys.platform == „Darwin”: QtGui.qt_mac_set_native_menubar (fałsz) – levis501
zainstalować PyQt4 za pomocą napar, a używanie tego kodu nadal nie spowoduje wyświetlenia paska menu w trybie ujednoliconym. Mogę pokazać pasek menu w głównym oknie aplikacji, tylko ustawiając 'self.menuBar.setNativeMenuBar (False)'. Jakieś sugestie? – swdev
poprawną odpowiedzią jest tftdias poniżej –