PyQt5 QMenuBar 和 QMenu 和 QAction
QMenuBar 和 QMenu 和 QAction具体作用
QMenuBar的作用就是在窗口顶部生成工具栏
而QMenu就是生成选项
QAction就是QMenu生成的选项
具体如图:(注:图中应该是QAction
QMenuBar
方法
方法 | 描述 |
---|---|
menuBar() | 返回主窗口的QMenuBar对象 |
addMenu() | 在菜单栏中添加一个新的QMenu对象 |
addAction() | 向QMenu小控件中添加一个操作按钮,其中包含文本或图标 |
setEnabled() | 将操作按钮设置为启用/禁用 |
addSeperator() | 在菜单中添加一条分割线 |
clear() | 删除菜单栏的内容 |
setShortcut() | 将快捷键关联到操作按钮 |
setText() | 设置菜单项的文本 |
setTitle() | 设置QMenu小控件的标题 |
text() | 返回与QACtion对象关联的文本 |
title() | 返回QMenu小控件的标题 |
案例:
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_())
注:部分来自csdn博客
本文作者:柠檬233
本文链接:https://www.cnblogs.com/Lemon-233/p/16871851.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步