python GUI库图形界面开发之PyQt5菜单栏控件QMenuBar的详细使用方法与实例

Autumn ·
更新时间:2024-11-13
· 795 次阅读

PyQt5菜单栏控件QMenuBar介绍

QMenuBar在QMainWindow对象的标题栏下方,水平的QMenuBar被保留显示QMenu对象

QMenuBar类提供了一个可以包含一个或多个QAction对象或 级联的QMenu对象,要创建一个弹出菜单,Pyqt提供了createPopupMenu()函数,menuBar()函数用于返回主窗口的QMenuBar对象:addMenu()函数可以将菜单添加到菜单栏中,通过addAction()函数可以在菜单中进行添加操作

设计菜单系统时常用的一些重要方法
方法 描述
menuBar() 返回主窗口的QMenuBar对象
addMenu() 在菜单栏中添加一个新的QMenu对象
addAction() 向QMenu小控件中添加一个操作按钮,其中包含文本或图标
setEnabled() 将操作按钮设置为启用/禁用
addSeperator() 在菜单中添加一条分割线
clear() 删除菜单栏的内容
setShortcut() 将快捷键关联到操作按钮
setText() 设置菜单项的文本
setTitle() 设置QMenu小控件的标题
text() 返回与QACtion对象关联的文本
title() 返回QMenu小控件的标题

单击任何QAction按钮时,QMenu对象都会发射triggered信号

QMenuBar的使用实例 import sys from PyQt5.QtGui import * from PyQt5.QtWidgets import * from PyQt5.QtCore import * class MenuDemo(QMainWindow): def __init__(self,parent=None): super(MenuDemo, self).__init__(parent) #水平布局 layout=QHBoxLayout() #实例化主窗口的QMenuBar对象 bar=self.menuBar() #向菜单栏中添加新的QMenu对象,父菜单 file=bar.addMenu('File') #向QMenu小控件中添加按钮,子菜单 file.addAction('New') #定义响应小控件按钮,并设置快捷键关联到操作按钮,添加到父菜单下 save=QAction('Save',self) save.setShortcut('Ctrl+S') file.addAction(save) #创建新的子菜单项,并添加孙菜单 edit=file.addMenu('Edit') edit.addAction('Copy') edit.addAction('Paste') #添加父菜单下 quit=QAction('Quit',self) file.addAction(quit) #单击任何Qmenu对象,都会发射信号,绑定槽函数 file.triggered[QAction].connect(self.processtrigger) #设置布局及标题 self.setLayout(layout) self.setWindowTitle('menu例子') def processtrigger(self,q): #输出那个Qmenu对象被点击 print(q.text()+'is triggeres') if __name__ == '__main__': app=QApplication(sys.argv) demo=MenuDemo() demo.show() sys.exit(app.exec_())

运行程序,显示效果如图

QMenuBar代码分析

在这个例子中,顶层窗口必须是QMainWindow对象,才可以引用QMenuBar对象

通过addMenu()方法将‘File'菜单添加到菜单栏

bar=self.menuBar() #向菜单栏中添加新的QMenu对象,父菜单 file=bar.addMenu('File')

菜单栏中的操作按钮可以是字符串或QAction对象

file.addAction('New') #定义响应小控件按钮,并设置快捷键关联到操作按钮,添加到父菜单下 save=QAction('Save',self) save.setShortcut('Ctrl+S') file.addAction(save)

将子菜单添加到顶级菜单中

edit=file.addMenu('Edit') edit.addAction('Copy') edit.addAction('Paste')

菜单发射triggered信号,将信号连接到槽函数processtrigger()该函数接受信号的QAction对象

file.triggered[QAction].connect(self.processtrigger)

本文详细讲解了PyQt5菜单栏控件QMenuBar的使用方法与实例,更多关于PyQt5菜单栏控件的使用知识请查看下面的相关链接

您可能感兴趣的文章:python GUI库图形界面开发之PyQt5窗口布局控件QStackedWidget详细使用方法Pyqt5自适应布局实例浅谈pyqt5在QMainWindow中布局的问题PyQt5每天必学之布局管理python GUI库图形界面开发之PyQt5滚动条控件QScrollBar详细使用方法与实例python GUI库图形界面开发之PyQt5 MDI(多文档窗口)QMidArea详细使用方法与实例python GUI库图形界面开发之PyQt5树形结构控件QTreeWidget详细使用方法与实例python GUI库图形界面开发之PyQt5选项卡控件QTabWidget详细使用方法与实例python GUI库图形界面开发之PyQt5表格控件QTableView详细使用方法与实例python GUI库图形界面开发之PyQt5打印控件QPrinter详细使用方法与实例python GUI库图形界面开发之PyQt5状态栏控件QStatusBar详细使用方法实例python GUI库图形界面开发之PyQt5计数器控件QSpinBox详细使用方法与实例python GUI库图形界面开发之PyQt5切换按钮控件QPushButton详细使用方法与实例python GUI库图形界面开发之PyQt5多行文本框控件QTextEdit详细使用方法实例python GUI库图形界面开发之PyQt5单选按钮控件QRadioButton详细使用方法与实例python GUI库图形界面开发之PyQt5复选框控件QCheckBox详细使用方法与实例python GUI库图形界面开发之PyQt5滑块条控件QSlider详细使用方法与实例python GUI库图形界面开发之PyQt5工具栏控件QToolBar的详细使用方法与实例python GUI库图形界面开发之PyQt5日期时间控件QDateTimeEdit详细使用方法与实例python GUI库图形界面开发之PyQt5下拉列表框控件QComboBox详细使用方法与实例python GUI库图形界面开发之PyQt5访问系统剪切板QClipboard类详细使用方法与实例python GUI库图形界面开发之PyQt5布局控件QHBoxLayout详细使用方法与实例



方法 python gui gui pyqt5 菜单 pyqt 菜单栏 界面 图形界面 Python

需要 登录 后方可回复, 如果你还没有账号请 注册新账号
相关文章