選單欄是非常常用的。是一組命令的集合
「MacOS」下狀態列的顯示不一樣,為了得到最相似的外觀,可以增加一句
menubar.setNativeMenuBar(False)
。
#!/usr/bin/python3
# -*- coding: utf-8 -*-
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):
exitAct = QAction(QIcon('exit.png'), '&Exit', self)
exitAct.setShortcut('Ctrl+Q')
exitAct.setStatusTip('Exit application')
exitAct.triggered.connect(qApp.quit)
self.statusBar()
menubar = self.menuBar()
fileMenu = menubar.addMenu('&File')
fileMenu.addAction(exitAct)
self.setGeometry(300, 300, 300, 200)
self.setWindowTitle('Simple menu')
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
這裡建立了只有一個命令的選單欄,這個命令就是終止應用。同時也建立了一個狀態列。而且還能使用快捷鍵Ctrl+Q退出應用。
exitAct = QAction(QIcon('exit.png'), '&Exit', self)
exitAct.setShortcut('Ctrl+Q')
exitAct.setStatusTip('Exit application')
QAction
是選單欄、工具欄或者快捷鍵的動作的組合。前面兩行,我們建立了一個圖示、一個 exit 的標籤和一個快捷鍵組合,都執行了一個動作。第三行,建立了一個狀態列,當滑鼠懸停在選單欄的時候,能顯示當前狀態。
exitAct.triggered.connect(qApp.quit)
當執行這個指定的動作時,就觸發了一個事件。這個事件跟 QApplication
的 quit()
行為相關聯,所以這個動作就能終止這個應用。
menubar = self.menuBar()
fileMenu = menubar.addMenu('&File')
fileMenu.addAction(exitAct)
menuBar()
建立選單欄。這裡建立了一個選單欄,並在上面新增了一個 file
選單,並關聯了點選退出應用的事件。
本作品採用《CC 協議》,轉載必須註明作者和本文連結