PyQt5 QMenuBar, QMenu & QAction Widgets

下面我将详细讲解Python的"PyQt5 QMenuBar,QMenu&QActionWidgets"的完整使用攻略。

一、什么是PyQt5 QMenuBar,QMenu&QActionWidgets

PyQt5是一个用于创建桌面应用程序的Python模块,提供了丰富的GUI(图形用户界面)功能,其中QMenuBar、QMenu和QActionWidgets是PyQt5中非常实用的三个小部件。

  • QMenuBar:是一个水平菜单栏,用于将多个菜单组织在一起,方便用户操作。

  • QMenu:是一个弹出式菜单或子菜单,与QMenuBar类似,可以创建菜单项和分隔符,可与QMenuBar和其他QMenu合并使用。

  • QActionWidgets:是可执行操作的GUI(图形用户界面)小部件,用于触发事件(例如,启动一个功能或打开一个窗口)。

二、如何使用PyQt5 QMenuBar,QMenu&QActionWidgets

QMenuBar的使用

使用QMenuBar需要先进行以下几个步骤:

1.导入PyQt5.QtWidgets模块。

2.创建QMainWindow窗口。

3.创建QMenuBar对象,并将其添加到窗口中。

4.创建QMenu对象,并逐个添加到QMenuBar中。

以下是一个简单的例子,它演示了如何创建一个简单的QMenuBar:

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QMenuBar, QMenu

class App(QMainWindow):

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

        menubar = self.menuBar()
        fileMenu = menubar.addMenu('文件')
        editMenu = menubar.addMenu('编辑')

        self.setWindowTitle('PyQt5 menu')
        self.setGeometry(300, 200, 350, 250)
        self.show()

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = App()
    sys.exit(app.exec_())

代码说明:

1.在这个例子中,我们导入QApplication、QMainWindow、QMenuBar和QMenu模块。

2.创建一个应用程序、一个主窗口、一个QMenuBar对象和两个QMenu对象。

3.在做这些之后,我们将QMenu添加到QMenuBar中。

QMenu的使用

QMenu是一个弹出式菜单或子菜单,它在QMainWindow或其他QMenu小部件内创建。创建QMenu需要先进行以下步骤:

1.创建QMenu对象,并将其添加到窗口或其他QMenu对象中。

2.向QMenu对象中添加QActionWidgets。

以下是一个简单的例子,它演示了如何创建一个简单的QMenu:

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

class App(QMainWindow):

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

        menubar = self.menuBar()
        fileMenu = menubar.addMenu('文件')

        newAct = QAction('新建', self)
        fileMenu.addAction(newAct)

        self.setWindowTitle('PyQt5 menu')
        self.setGeometry(300, 200, 350, 250)
        self.show()

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = App()
    sys.exit(app.exec_())

代码说明:

1.在这个例子中,我们分别导入QApplication、QMainWindow、QMenuBar、QMenu和QAction模块。

2.创建一个应用程序、一个主窗口、一个QMenuBar对象和一个QMenu对象。

3.在QMenu对象中,我们添加了一个QActionWidgets.

QActionWidgets的使用

QActionWidget是可执行操作的GUI(图形用户界面)小部件,它可以在QMenu或QToolBar中使用。使用QActionWidget需要先进行以下步骤:

1.创建QAction对象,并向其添加标签、快捷方式和提示信息。

2.绑定QAction和操作。

3.将QAction添加到QMenu或QToolBar中。

以下是一个简单的例子,它演示了如何创建一个简单的QActionWidget:

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

class App(QMainWindow):

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

        self.initUI()

    def initUI(self):

        newAct = QAction('新建', self)
        newAct.setShortcut('Ctrl+N')
        newAct.setStatusTip('创建一个新文件')
        newAct.triggered.connect(self.create_file)

        menubar = self.menuBar()
        fileMenu = menubar.addMenu('文件')
        fileMenu.addAction(newAct)

        self.setWindowTitle('PyQt5 menu')
        self.setGeometry(300, 200, 350, 250)
        self.show()

    def create_file(self):
        print('创建一个新文件')

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = App()
    sys.exit(app.exec_())

代码说明:

1.在这个例子中,我们分别导入QApplication、QMainWindow和QAction模块。

2.创建QAction对象,添加标签、快捷方式和提示信息。

3.将QAction添加到QMenu中。

4.绑定QAction和操作(create_file)。

5.在操作(create_file)中输出提示信息。

第二个示例

以下是第二个示例,它演示了如何在QMenu和QAction之间创建一个新的子菜单,以及如何向新的菜单中添加QAction,然后执行操作。

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

class App(QMainWindow):

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

        self.initUI()

    def initUI(self):

        menubar = self.menuBar()
        fileMenu = menubar.addMenu('文件')

        impMenu = QMenu('导入', self)
        fileMenu.addMenu(impMenu)

        impAct = QAction('导入,选项A', self)        
        impMenu.addAction(impAct)

        impAct2 = QAction('导入,选项B', self)        
        impMenu.addAction(impAct2)

        newAct = QAction('新建', self)        
        fileMenu.addAction(newAct)

        self.setWindowTitle('PyQt5 menu')
        self.setGeometry(300, 200, 350, 250)
        self.show()

    def impSelected(self, q):
        print("从子菜单中选择了此项:"+q.text())

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = App()
    sys.exit(app.exec_())

代码说明:

1.在这个例子中,我们导入了QApplication、QMainWindow、QMenu和QAction模块。

2.创建QMenu和QAction对象,并将QMenu和QAction添加到QMenuBar中。

3.创建新的QMenu对象(impMenu)并添加到父菜单中(fileMenu)。

4.向impMenu中添加QAction对象,并将执行操作绑定到impSelected函数。

5.在impSelected函数中输出选择的QAction文本。

三、总结

这篇文章中,我们介绍了如何使用PyQt5中的三个小部件QMenuBar、QMenu和QActionWidgets。通过多个示例,我们说明了如何创建菜单栏、菜单,如何将动作绑定到GUI小部件,并完成操作等等。希望这篇小型教程能对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:PyQt5 QMenuBar, QMenu & QAction Widgets - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • PyQt5 QCalendarWidget 获取它的高度

    下面就来详细讲解Python的“PyQt5 QCalendarWidget获取它的高度”的完整使用攻略。 需求介绍 在使用PyQt5开发图形用户界面过程中,有时需要动态获取QCalendarWidget控件的高度。这时需要用到一些PyQt5的方法。 方法介绍 1. sizeHint 方法 在PyQt5中,QWidget提供了一个sizeHint()方法,该方…

    python 2023年5月12日
    00
  • PyQt5 – 当鼠标悬停在单选按钮上时为其设置皮肤

    下面是Python中使用PyQt5为单选按钮设置皮肤的完整攻略: 1. 准备工作 在使用PyQt5为单选按钮设置皮肤之前,需要先安装PyQt5库,可以使用pip命令进行安装: pip install PyQt5 2. 创建窗口 在PyQt5中创建窗口需要使用QtWidgets模块中的QMainWindow类,比如下面的例子: from PyQt5.QtWid…

    python 2023年5月11日
    00
  • PyQt5组合框 用户输入的项目存储在顶部

    下面是关于Python的PyQt5组合框的使用攻略,让用户输入的项目存储在顶部的完整解释。 1. PyQt5组合框简介 PyQt5是一种GUI(图形用户界面)工具包,它可以用Python编写。它具有许多不同类型的GUI元素,其中一个重要的元素就是组合框。组合框是一种用户可以选择一个或多个选项的下拉菜单,它为用户提供了快速访问一组选项的便利性。 2. PyQt…

    python 2023年5月11日
    00
  • PyQt5组合框 可编辑和鼠标悬停时的不同边框颜色

    下面就是Python的”PQQT5组合框可编辑和鼠标悬停时的不同边框颜色”的完整使用攻略。 PyQt5组合框可编辑 在PyQt5中,ComboBox是一个常用的控件,它可以允许用户从下拉列表中选择一个选项。同时,ComboBox还可以设置为可编辑的,让用户自定义输入选项。以下是一个设置ComboBox可编辑的示例代码: from PyQt5.QtWidget…

    python 2023年5月11日
    00
  • PyQt5 QCommandLinkButton – 为其设置边框

    下面是Python PyQt5的QCommandLinkButton类设置边框的使用攻略。 1. PyQt5 QCommandLinkButton 类概述 QCommandLinkButton是PyQt5中一个比QPushButton更加高级的按钮控件。它通常用于显示重要的交互动作,比如提交表单、打开链接等。它的外观类似于一个带有标题和描述的链接按钮。 2.…

    python 2023年5月12日
    00
  • PyQt5 QDockWidget – 停靠位置改变的信号

    让我们来详细讲解Python的“PyQt5 QDockWidget-停靠位置改变的信号”的完整使用攻略,其中包含两条示例说明。 PyQt5 QDockWidget-停靠位置改变的信号 PyQt5是使用Python语言开发的图形界面(GUI)工具包。在PyQt5中,QDockWidget是一种在主窗口边缘停靠的可调整大小的窗口小部件。当QDockWidget的…

    python 2023年5月12日
    00
  • PyQt5 – 当鼠标悬停在非可编辑组合框的行编辑部分时的背景图片

    当鼠标悬停在非可编辑组合框的行编辑部分时,可以通过设置样式来改变其背景图片。下面是实现此效果的详细步骤。 1. 安装PyQt5 使用PyQt5实现此功能,需要先安装PyQt5库。可以在Python的官方网站(https://www.python.org/)下载安装Python,然后使用pip命令安装PyQt5库。 pip install PyQt5 2. 导…

    python 2023年5月10日
    00
  • PyQt5 – 如何设置RadioButton的工具提示时间

    PyQt5是Python语言中的一种GUI库,常用于创建窗口应用程序和图形用户界面。其中的RadioButton(单选按钮)是常用的一种基本控件,可以让用户从多个选项中选择一项。 设置RadioButton的工具提示时间是一个很实用的功能,可以让用户在鼠标停留在该控件上一定时间后显示一段文本介绍。下面就来详细讲解如何在PyQt5中实现这个功能。 准备工作 在…

    python 2023年5月10日
    00
合作推广
合作推广
分享本页
返回顶部