PyQt5的菜单栏、工具栏和状态栏
1、创建菜单栏
import sys, math
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import * class menu(QMainWindow):
def __init__(self):
super(menu, self).__init__()
bar=self.menuBar() #获取菜单栏 #添加顶层菜单
file=bar.addMenu("文件")
help=bar.addMenu("帮助")
file.addAction("新建") #给顶层菜单添加相应的匹配分菜单
save=QAction("保存",self)
save.setShortcut("Ctrl+S") #给分菜单设置快捷键
file.addAction(save)
save.triggered.connect(self.process) #菜单栏设置相应的信号触发和槽函数 edit=bar.addMenu("edit") #设置第二个菜单栏的内容
#设置第三层菜单栏的包含的成分
edit.addAction("cut")
edit.addAction("paste")
quit=QAction("quit",self) help.addAction("版本信息")
help.addAction("许可证信息") file.addAction(quit)
def process(self,a):
print(self.sender().text()) if __name__ == "__main__":
app = QApplication(sys.argv)
p = menu()
p.show()
sys.exit(app.exec_())

2、创建工具栏,默认状态为只显示图标,放上鼠标显示名称
import sys, math
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import * class toolbar(QMainWindow):
def __init__(self):
super(toolbar, self).__init__()
self.initUI() def initUI(self):
self.setWindowTitle("工具栏")
self.resize(300,200) tb1=self.addToolBar("File") #定义一层工具栏
new=QAction(QIcon("./image-1/1-1.jpg"),"new",self) #设置工具栏的图标new
tb1.addAction(new) open = QAction(QIcon("./image-1/1-2.jpg"), "open", self) #设置工具栏的图标open
tb1.addAction(open)
open.triggered.connect(self.print1) #工具栏的信号触发函数triggered save = QAction(QIcon("./image-1/1-3.png"), "save", self) # 设置工具栏的图标save
tb1.addAction(save) #添加第二个工具栏所包含的图标肯文本说明
tb2=self.addToolBar("file1")
save2 = QAction(QIcon("./image-1/1-3.png"), "save", self) # 设置工具栏的图标save
tb2.addAction(save2) #设置工具栏的显示格式
tb2.setToolButtonStyle(Qt.ToolButtonTextUnderIcon) #图标肯功能说明文本混合,文本在下面
tb2.setToolButtonStyle(Qt.ToolButtonTextOnly) def print1(self):
print("hello world") if __name__ == "__main__":
app = QApplication(sys.argv)
p = toolbar()
p.show()
sys.exit(app.exec_())

3、创建状态栏,主要显示目前的一些状态信息,y一般位于窗口的下方
import sys, math
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import * class statusbar(QMainWindow):
def __init__(self):
super(statusbar, self).__init__()
self.initUI() def initUI(self):
self.setWindowTitle("状态栏")
self.resize(300,200) bar=self.menuBar()
file=bar.addMenu("file")
file.addAction("show")
file.triggered.connect(self.process)
self.setCentralWidget(QTextEdit())
self.statusbar=QStatusBar() #定义一个新的状态栏
self.setStatusBar(self.statusbar) #设置窗口的状态栏 def process(self,q):
if q.text()=="show":
self.statusbar.showMessage(q.text()+"菜单被点击了",5000) #设置槽函数,状态栏显示信息
def print1(self):
print("hello world")
if __name__ == "__main__":
app = QApplication(sys.argv)
p =statusbar()
p.show()
sys.exit(app.exec_())

PyQt5的菜单栏、工具栏和状态栏的更多相关文章
- 三、PyQt5不同方法创建菜单栏、工具栏和状态栏
创建菜单栏.工具栏和状态栏可以直接通过代码实现,也可以通过Qt Designer中的属性编辑器等实现.通过两种方法的学习可以加深理解,更好的掌握PyQt5. 一.菜单栏与状态栏 状态栏的设置比较简单, ...
- Qt 学习之路 :菜单栏、工具栏和状态栏
在之前的<添加动作>一文中,我们已经了解了,Qt 将用户与界面进行交互的元素抽象为一种“动作”,使用QAction类表示.QAction可以添加到菜单上.工具栏上.期间,我们还详细介绍了一 ...
- Qt 学习之路 2(12):菜单栏、工具栏和状态栏
Home / Qt 学习之路 2 / Qt 学习之路 2(12):菜单栏.工具栏和状态栏 Qt 学习之路 2(12):菜单栏.工具栏和状态栏 豆子 2012年9月10日 Qt 学习之路 2 2 ...
- 【Qt开发】菜单栏,工具栏和状态栏
概述 菜单栏,工具栏,状态栏应用中经常见到,下图解释一目了然,实际开发中 两种方式来实现,一种是使用纯代码QMenuBar,QToolBar,QStatusBar来设计开发,另一种使用Qt Desig ...
- Robot Framework--02 菜单栏&工具栏
转自:http://blog.csdn.net/tulituqi/article/details/7584795 我把RIDE的界面大致分了四个区域:菜单栏.工具栏.案例及资源区.工作区,如下图 菜单 ...
- PyQt5+Eric6开发的一个使用菜单栏、工具栏和状态栏的示例
前言 在做一个数据分析的桌面端程序遇到一些问题,这里简单整理下,分享出来供使用者参考. 1.网上查使用PyQt5工具栏的示例,发现很多只是一个简单的退出功能,如果有几个按钮如何处理?如何区分点击的究竟 ...
- pyside 添加菜单栏,窗口状态栏,工具栏
这三个放到一起,个人认为比较有可比性. 另外该写的解释我都记到注释里面了 话不多说,show me the code 菜单栏, # ubuntu16.04触发关联事件不成功,应该是ubantu的全局窗 ...
- PyQt4 菜单栏 + 工具栏 + 状态栏 + 中心部件 生成一个文本编辑部件示例
我们将创建一个菜单栏.一个工具栏.一个状态栏和一个中心部件. #!/usr/bin/python # -*- coding:utf-8 -*- import sys from PyQt4 import ...
- Qt——菜单栏、工具栏、状态栏
1.菜单栏 菜单栏的意义是将可点击触发最终事件的集中在一起,所以菜单栏中是QAction 添加菜单栏是QMainWindow的行为 QMenubar *menubar = this->addMe ...
随机推荐
- HTML的背景
HTML HTML(超文本标记语言),超文本包括:文字.图片.音频.视频.动画等. W3C(万维网联盟)标准包括: 结构化标准语言(HTML.XML) 1.1. HTML(超文本标记语言):用来显示数 ...
- 爬山 启发式合并 / STL
题目 其实 Kano 曾经到过由乃山,当然这名字一看山主就是 Yuno 嘛.当年 Kano 看见了由乃山,内心突然涌出了一股杜甫会当凌绝顶,一览众山小的豪气,于是毅然决定登山. 但是 Kano 总是习 ...
- nginx-vue项目在window下的部署
主机->操作系统->window(.net)/Linux->tomcat/nginx(软件反向代理) 1.vue项目打包到dist文件夹(之后把dist文件夹放到服务器就可以了) n ...
- 开源镜像站,vmware下载
vmware下载:https://www.newasp.net/soft/345086.html 官网下载链接:https://www.centos.org/download/ http://mirr ...
- python+selenium:浏览器webdriver操作(1)--基本对象定位
1.简单对象的定位-----自动化测试的核心 对象的定位应该是自动化测试的核心,要想操作一个对象,首先应该识别这个对象.一个对象就是一个人一样,他会有各种的特征(属性),如比我们可以通过一个人的身份证 ...
- (转载)Docker的boot2docker.iso镜像使用
原文路径:https://blog.csdn.net/jiangjingxuan/article/details/54908272#commentsedit 在Docker首次启动时需要下载的一个bo ...
- hdu:2089 ( 数位dp入门+模板)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2089 数位dp的模板题,统计一个区间内不含62的数字个数和不含4的数字个数,直接拿数位dp的板子敲就行 ...
- DRF分页
一.序列化 from rest_framework impost serializers from . models import * class GoodsSerializer(serializer ...
- centos7安装Nginx 配置及反向代理
Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Ngin ...
- Form DataGridView绑定BindingSource的几种方式
本文链接:https://blog.csdn.net/qq_15138169/article/details/83341076 在WinForm的开发中,ListView和DataGridView应用 ...