pyqt QMainWindow菜单栏

pyqt QMainWindow菜单栏

  • [pyqt QMainWindow菜单栏](#pyqt QMainWindow菜单栏)
  • 效果
  • 代码

pyqt QMainWindow菜单栏

QMainWindow 是 PyQt中的一个核心类,它提供了一个主应用程序窗口,通常包含菜单栏、工具栏、状态栏、中心窗口(通常是一个 QWidget 或其子类)等。

效果

代码

python 复制代码
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QAction, qApp, QMenu, QMessageBox


class Example(QMainWindow):

    def __init__(self):
        super().__init__()

        self.initUI()

    def initUI(self):
        # 创建一个菜单栏
        menubar = self.menuBar()

        # 创建一个文件菜单
        fileMenu = menubar.addMenu('File')

        # 创建一个退出动作
        exitAction = QAction('Exit', self)
        exitAction.setShortcut('Ctrl+Q')
        exitAction.setStatusTip('Exit application')
        exitAction.triggered.connect(self.on_exit)

        # 将退出动作添加到文件菜单
        fileMenu.addAction(exitAction)

        # 设置窗口的标题和大小
        self.setWindowTitle('QMainWindow Menu Example')
        self.setGeometry(300, 300, 300, 200)

        # 显示窗口
        self.show()

    def on_exit(self):
        # 弹出一个确认对话框
        reply = QMessageBox.question(self, 'Message',
                                     "Are you sure to quit?", QMessageBox.Yes |
                                     QMessageBox.No, QMessageBox.No)

        if reply == QMessageBox.Yes:
            qApp.quit()


if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
相关推荐
深蓝海拓8 小时前
PySide6从0开始学习的笔记(八) 控件(Widget)之QSlider(滑动条)
笔记·python·qt·学习·pyqt
深蓝海拓1 天前
PySide6从0开始学习的笔记(二) 控件(Widget)之容器类控件
笔记·qt·学习·pyqt
叶子丶苏1 天前
第十七节_PySide6基本窗口控件深度补充_窗口绘图类(QPicture类) 下篇
python·pyqt
深蓝海拓1 天前
PySide6从0开始学习的笔记(六) 控件(Widget)之按钮类
笔记·python·qt·学习·pyqt
深蓝海拓1 天前
PySide6从0开始学习的笔记(七) 控件(Widget)之文字输入类控件
笔记·python·qt·学习·pyqt
python开发笔记1 天前
PyQt(12)TreeWidget与TreeView对比
pyqt
Java Fans2 天前
PyQt多页面切换教程
pyqt
深蓝海拓2 天前
PySide6从0开始学习的笔记(五) 信号与槽
笔记·qt·学习·pyqt
深蓝海拓3 天前
PySide6从0开始学习的笔记(四)QMainWindow
笔记·python·学习·pyqt
深蓝海拓3 天前
PySide6 的 QSettings简单应用学习笔记
python·学习·pyqt