思路
- 先实现 QAction 和其关联的方法
- 实现QMenu,并且将QAction添加进去
- 使用MainWindow自带的menuBar,并且将QMenu添加进去
代码
from PySide6.QtWidgets import QApplication,QMainWindow,QMenu
from PySide6.QtGui import QAction
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
# 创建 action
self.openfile = QAction('打开文件')
# action关联方法
self.openfile.triggered.connect(lambda: print('打开文件'))
self.closefile = QAction('关闭文件')
self.closefile.triggered.connect(lambda: print('关闭文件'))
# 创建Menu
self.fileMenu = QMenu('文件')
# Menu添加action
self.fileMenu.addAction(self.openfile)
self.fileMenu.addAction(self.closefile)
# mainwindow自带menuBar,添加menu
self.menuBar().addMenu(self.fileMenu)
if __name__ == '__main__':
app = QApplication([])
window = MainWindow()
window.show()
app.exec()
效果