1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
|
import sys from PyQt5.QtWidgets import (QApplication, QMainWindow, QWidget, QPushButton, QAction, QMessageBox) from PyQt5.QtGui import QIcon from PyQt5.QtCore import QCoreApplication
class MyMainWindow(QMainWindow):
def __init__(self): super().__init__() self.initUI()
def initUI(self): self.setWindowTitle('Menu example') self.setGeometry(300, 300, 300, 200)
mainMenu = self.menuBar()
fileMenu = mainMenu.addMenu('File')
openButton = QAction('Open', self) openButton.triggered.connect(self.onOpenFile) fileMenu.addAction(openButton)
exitButton = QAction('Exit', self) exitButton.setShortcut('Ctrl+Q') exitButton.triggered.connect(self.close) fileMenu.addAction(exitButton)
helpMenu = mainMenu.addMenu('Help') aboutButton = QAction('About', self) aboutButton.triggered.connect(self.onAbout) helpMenu.addAction(aboutButton)
aboutQtButton = QAction('AboutQt', self) aboutQtButton.triggered.connect(self.onAboutQt) helpMenu.addAction(aboutQtButton)
self.show()
def onOpenFile(self): QMessageBox.information(self, 'Info', 'Open file ...')
def onAbout(self): QMessageBox.about(self, 'About', 'This is about message.')
def onAboutQt(self): QMessageBox.aboutQt(self)
if __name__ == '__main__': app = QApplication(sys.argv) ex = MyMainWindow() sys.exit(app.exec_())
|