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


Posted in Python onFebruary 28, 2020

PyQt5工具栏控件QToolBar介绍

QToolBar控件是由文本按钮,图标或其他小控件按钮组成的可移动面板,通常位于菜单栏下方

QToolBar类中的常用方法

方法 描述
addAction() 添加具有文本或图标的工具按钮
addSeperator() 分组显示工具按钮
addWidget() 添加工具栏中按钮以外的控件
addToolBar() 使用QMainWindow类的方法添加一个新的工具栏
setMovable() 工具变得可移动
setOrientation() 工具栏的方向可以设置为Qt.Horizontal或Qt.certical

每当单击工具栏中的按钮时,都将发射actionTriggered信号,另外,这个信号将关联的QAction对象的引用发到连接的槽函数上

QToolBar使用实例

import sys
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *

class ToolBarDemo(QMainWindow):
  def __init__(self,parent=None):
    super(ToolBarDemo, self).__init__(parent)
    #设置标题与初始大小
    self.setWindowTitle('toolbar例子')
    self.resize(300,200)

    #垂直布局
    layout=QVBoxLayout()

    #在工具栏区域添加文件工具栏
    tb=self.addToolBar('File')
    #添加图形按钮
    new=QAction(QIcon('images\\new.png'),'new',self)
    tb.addAction(new)
    open=QAction(QIcon('images\open.png'),'open',self)
    tb.addAction(open)
    save=QAction(QIcon('images\save.png'),'save',self)
    tb.addAction(save)

    #图形对象点击触发自定义槽函数
    tb.actionTriggered[QAction].connect(self.toolbtnpressed)

    self.setLayout(layout)

  def toolbtnpressed(self,a):
    #输出,点击地图性按钮
    print('pressed tool button is ',a.text())
if __name__ == '__main__':
  app=QApplication(sys.argv)
  demo=ToolBarDemo()
  demo.show()
  sys.exit(app.exec_())

运行程序,显示效果如图

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

QToolBar代码分析

在这个例子中,首先调用addToolBar()方法在工具栏区域添加文件工具栏

tb=self.addToolBar('File')

然后,添加具有文本标题的工具按钮,工具栏通常包含图形按钮,具有图标和名称的QAction对象将被添加到工具栏中

new=QAction(QIcon('images\\new.png'),'new',self)
    tb.addAction(new)
    open=QAction(QIcon('images\open.png'),'open',self)
    tb.addAction(open)
    save=QAction(QIcon('images\save.png'),'save',self)
    tb.addAction(save)

最后,将actionTriggered信号连接到槽函数toolbtnpressed()

tb.actionTriggered[QAction].connect(self.toolbtnpressed)

本文详细讲解了PyQt5工具栏控件QToolBar的详细使用方法与实例,更多关于PyQt5库控介绍请查看下面的相关链接

Python 相关文章推荐
Python运算符重载详解及实例代码
Mar 07 Python
python 简单搭建阻塞式单进程,多进程,多线程服务的实例
Nov 01 Python
Python实现时钟显示效果思路详解
Apr 11 Python
Python3实现腾讯云OCR识别
Nov 27 Python
解决pyttsx3无法封装的问题
Dec 24 Python
python使用time、datetime返回工作日列表实例代码
May 09 Python
win8.1安装Python 2.7版环境图文详解
Jul 01 Python
Pyspark读取parquet数据过程解析
Mar 27 Python
Python 的 __str__ 和 __repr__ 方法对比
Sep 02 Python
python和C++共享内存传输图像的示例
Oct 27 Python
Python和Bash结合在一起的方法
Nov 13 Python
Python制作一个随机抽奖小工具的实现
Jul 07 Python
Python爬取365好书中小说代码实例
Feb 28 #Python
Python反爬虫伪装浏览器进行爬虫
Feb 28 #Python
使用wxpy实现自动发送微信消息功能
Feb 28 #Python
解决ROC曲线画出来只有一个点的问题
Feb 28 #Python
Python编程快速上手——正则表达式查找功能案例分析
Feb 28 #Python
利用python画出AUC曲线的实例
Feb 28 #Python
Python编程快速上手——选择性拷贝操作案例分析
Feb 28 #Python
You might like
高亮度显示php源代码
2006/10/09 PHP
为Yahoo! UI Extensions Grid增加内置的可编辑器
2007/03/10 Javascript
js获取事件源及触发该事件的对象
2013/10/24 Javascript
js Date概念详细介绍
2013/11/22 Javascript
Bootstrap入门书籍之(四)菜单、按钮及导航
2016/02/17 Javascript
jQuery插件JWPlayer视频播放器用法实例分析
2017/01/11 Javascript
Nodejs 获取时间加手机标识的32位标识实现代码
2017/03/07 NodeJs
JavaScript实现星星等级评价功能
2017/03/22 Javascript
ES6中Math对象新增的方法实例详解
2017/04/25 Javascript
jQuery ajax读取本地json文件的实例
2017/10/31 jQuery
JavaScript执行环境及作用域链实例分析
2018/08/01 Javascript
利用Bootstrap Multiselect实现下拉框多选功能
2019/04/08 Javascript
通过js给网页加上水印背景实例
2019/06/17 Javascript
微信小程序使用npm包的方法步骤
2019/08/13 Javascript
解决layui富文本编辑器图片上传无法回显的问题
2019/09/18 Javascript
[00:03]DOTA2新版本PA至宝展示
2014/11/19 DOTA
基于wxpython实现的windows GUI程序实例
2015/05/30 Python
对python requests发送json格式数据的实例详解
2018/12/19 Python
python lxml中etree的简单应用
2019/05/10 Python
30秒学会30个超实用Python代码片段【收藏版】
2019/10/15 Python
Python 实现将数组/矩阵转换成Image类
2020/01/09 Python
Spring Boot中使用IntelliJ IDEA插件EasyCode一键生成代码详细方法
2020/03/20 Python
python opencv进行图像拼接
2020/03/27 Python
python的scipy.stats模块中正态分布常用函数总结
2021/02/19 Python
Html5游戏开发之乒乓Ping Pong游戏示例(一)
2013/01/21 HTML / CSS
Turnbull & Asser官网:英国皇室御用的顶级定制衬衫
2019/01/31 全球购物
英国123鲜花网站:123 Flowers
2019/07/07 全球购物
环境工程求职简历的自我评价范文
2013/10/24 职场文书
小学端午节活动方案
2014/03/13 职场文书
2014世界杯球队球队口号
2014/06/05 职场文书
学生抄作业检讨书(2篇)
2014/10/17 职场文书
党的群众路线教育实践活动领导班子整改方案
2014/10/25 职场文书
党建工作汇报材料
2014/12/24 职场文书
525心理健康活动总结
2015/05/08 职场文书
创业计划书之水果店
2019/07/18 职场文书
Mysql 文件配置解析介绍
2022/05/06 MySQL