IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> PyQt5之MenuBar菜单控件的使用(三) -> 正文阅读

[Python知识库]PyQt5之MenuBar菜单控件的使用(三)


MenuBar 详解

在PyQt5中,菜单栏、主菜单和菜单项分别用QMenuBar类、QMenu类和QAction类来表示。


一、定义

菜单栏是GUI应用的常规组成部分,是位于各种菜单中的一组命令操作。菜单栏(QMenuBar) 它分为两部分:主菜单(QMenu)菜单项(QAction)。一个QMenu中可包含任意多个QAction对象,也可包含另外的QMenu,用来表示级联菜单。创建一个菜单,基本上都要用上这3个类。
创建菜单的3个步骤

1.QMenuBar类

QMenuBar类是所有窗口的菜单栏,创建菜单栏的两种方法如下:
方法一: QMenuBar类的构造方法

self.menuBar = PyQt5.QtWidgets.QMenuBar(QMainWindow)

方法二:QMainWindow对象的menuBar()方法

self.menuBar = QMainWindow.menuBar()

创建完菜单栏后,就可以使用QMenuBar类的方法对菜单进行设置。

方法说明。
addAction()添加菜单项
addActions()添加多个菜单项
addMenu()添加主菜单

2.QMenu类

QMenu类是菜单栏中的菜单,可显示文本和图标,但不执行操作,类似于标签label的作用。

方法说明
addAction()添加菜单项
addMenu()添加主菜单
setTitle()设置菜单的文本
title()获取菜单的文本

2.QAction类

PyQt5中将用户与界面进行交互的元素抽象为一种“动作”,用QAction类表示。QAction类是一个运行在菜单栏、工具栏和定制键盘快捷键的抽象类,它是一个真正执行操作的部件。该类有一个常用的信号triggered,用来在单击菜单项时发射。

方法说明
setIcon()设置菜单项图标
setShortcut()设置快捷键
setEnabled()设置菜单项是否可用
title()获取菜单项的文本

二、创建一个菜单栏

在下面的例子中,我们创建了一个带有菜单的菜单栏。这个菜单包含了一个动作,如果选中,就会终止应用程序。
代码如下(示例):

# -*- coding: utf-8 -*-
# @Time    : 2022/7/14 14:14

import sys
from PyQt5.QtWidgets import QMainWindow, QAction, QApplication, qApp
from PyQt5.QtGui import QIcon

class Example(QMainWindow):
    def __init__(self):
        super().__init__()
        self.my_initUI()

    def my_initUI(self):
        exitAct = QAction(QIcon('images/exit.ico'), '退出&(Q)', self)     #创建QAction类的对象exitAct。QAction是一个用于菜单栏、工具栏或自定义快捷键的抽象动作行为
        exitAct.setShortcut('Ctrl+Q')    			#调用对象的方法,为这个动作定义一个快捷键
        # exitAct.setStatusTip('退出应用')   	#创建一个当我们鼠标浮于菜单项之上就会显示的一个状态提示
        exitAct.triggered.connect(qApp.quit)      #选中特定的动作,触发信号被发射。信号连接到 QApplication组件的 quit()方法,这样就中断了应用
        # self.statusBar()      					#创建状态栏,用来显示上面的状态提示

        menubar = self.menuBar()            	# menuBar()方法创建了一个菜单栏
        fileMenu = menubar.addMenu('文件&(F)')        #创建一个文件菜单,设置快捷键F
        fileMenu.addAction(exitAct)                 #将退出动作添加到file菜单中
        self.setGeometry(300,300,400,300)
        self.setWindowTitle('菜单栏')
        self.show()

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

效果图如下:
MenuBar效果图


  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-07-20 18:47:30  更:2022-07-20 18:49:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 11:56:13-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码