PyQt【第二篇】菜单和工具栏
简介
QMainWindow类提供了一个应用主窗口。默认创建一个拥有状态栏、工具栏和菜单栏的经典应用窗口骨架。
状态栏
import sys from PyQt5 import QtWidgets class Example(QtWidgets.QMainWindow): def __init__(self): super().__init__() self.initUI() def initUI(self): self.setWindowTitle('状态栏') self.statusBar().showMessage('空窗体') self.setGeometry(300, 300, 400, 200) self.show() if __name__ == '__main__': app = QtWidgets.QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
菜单栏
import sys from PyQt5.QtWidgets import QMainWindow, QAction, qApp, QApplication from PyQt5.QtGui import QIcon class Example(QMainWindow): def __init__(self): super().__init__() self.initUI() def initUI(self): self.setGeometry(300, 300, 400, 200) self.setWindowTitle('Menubar') self.initMenu() self.show() def initMenu(self): ''' File菜单栏添加Exit标签 :return: ''' # QAction是一个用于菜单栏、工具栏或自定义快捷键的抽象动作行为。 #创建Exit标签 exitAction = QAction(QIcon('exit.ico'), '&Exit', self) # 创建一个标签:图标为exit.ico、文本为'Exit' exitAction.setShortcut('Ctrl+Q') # 定义快捷键 exitAction.setStatusTip('Exit application') # 鼠标浮于菜单项之上就会显示的一个状态提示 exitAction.triggered.connect(qApp.quit) # 触发quit()方法 self.statusBar() # Exit标签加入File菜单栏 menubar = self.menuBar() # 创建菜单栏 fileMenu = menubar.addMenu('&File') # 创建File菜单 fileMenu.addAction(exitAction) # File菜单添加Exit标签 if __name__ == '__main__': app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
工具栏
import sys from PyQt5.QtWidgets import QMainWindow, QAction, qApp, QApplication from PyQt5.QtGui import QIcon class Example(QMainWindow): def __init__(self): super().__init__() self.initUI() def initUI(self): self.setGeometry(300, 300, 400, 200) self.setWindowTitle('Menubar') self.initMenu() self.show() def initMenu(self): ''' 工具栏加Exit标签 :return: ''' # QAction是一个用于菜单栏、工具栏或自定义快捷键的抽象动作行为。 # 创建Exit标签 exitAction = QAction(QIcon('exit.ico'), '&Exit', self) # 创建一个标签:图标为exit.ico、文本为'Exit' exitAction.setShortcut('Ctrl+Q') # 定义快捷键 exitAction.triggered.connect(qApp.quit) # 触发quit()方法 # 创建Exit标签加入工具栏 self.toolbar = self.addToolBar('Exit') self.toolbar.addAction(exitAction) if __name__ == '__main__': app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
组件组合
import sys from PyQt5.QtWidgets import QMainWindow, QAction, qApp, QApplication from PyQt5.QtGui import QIcon class Example(QMainWindow): def __init__(self): super().__init__() self.initUI() def initUI(self): self.setGeometry(300, 300, 400, 200) self.setWindowTitle('Menubar') self.initMenu() self.show() def initMenu(self): ''' 工具栏加Exit标签 :return: ''' # QAction是一个用于菜单栏、工具栏或自定义快捷键的抽象动作行为。 # 创建Exit标签 exitAction = QAction(QIcon('exit.ico'), '&Exit', self) # 创建一个标签:图标为exit.ico、文本为'Exit' exitAction.setShortcut('Ctrl+Q') # 定义快捷键 exitAction.triggered.connect(qApp.quit) # 触发quit()方法 self.statusBar() # Exit标签加入File菜单栏 menubar = self.menuBar() fileMenu = menubar.addMenu('&File') fileMenu.addAction(exitAction) # 创建Exit标签加入工具栏 self.toolbar = self.addToolBar('Exit') self.toolbar.addAction(exitAction) if __name__ == '__main__': app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
谢谢