Python学习笔记之PyQt5菜单Check - CheckMenuBar

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/xsophiax/article/details/99439674

在项目中会使用到要让某个menu处于check状态:

import sys
from PyQt5.QtWidgets import QMainWindow, QAction, QApplication


class checkMenuBar(QMainWindow):

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

        self.initUI()

    def initUI(self):

        self.statusbar = self.statusBar()
        self.statusbar.showMessage('Ready')

        menubar = self.menuBar()
        viewMenu = menubar.addMenu('File')

        viewStatAct = QAction('File menuBar', self, checkable=True)
        viewStatAct.setStatusTip('File menuBar')
        viewStatAct.setChecked(True)
        viewStatAct.triggered.connect(self.toggleMenu)

        viewMenu.addAction(viewStatAct)

        self.setGeometry(300, 300, 300, 200)
        self.setWindowTitle('PyQt5 - Check menu')
        self.show()

    def toggleMenu(self, state):

        if state:
            self.statusbar.show()
        else:
            self.statusbar.hide()


if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = checkMenuBar()
    sys.exit(app.exec_())
viewStatAct = QAction('View statusbar', self, checkable=True)
用checkable选项创建一个能选中的菜单。
viewStatAct.setChecked(True)
默认设置为选中状态。

程序预览:

猜你喜欢

转载自blog.csdn.net/xsophiax/article/details/99439674