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 字符串操作实现代码(截取/替换/查找/分割)
Jun 08 Python
Python程序中用csv模块来操作csv文件的基本使用教程
Mar 03 Python
Python中利用Scipy包的SIFT方法进行图片识别的实例教程
Jun 03 Python
Python实现PS滤镜特效之扇形变换效果示例
Jan 26 Python
Pandas实现数据类型转换的一些小技巧汇总
May 07 Python
python绘制漏斗图步骤详解
Mar 04 Python
Python 根据数据模板创建shapefile的实现
Nov 26 Python
如何使用Python多线程测试并发漏洞
Dec 18 Python
python 通过手机号识别出对应的微信性别(实例代码)
Dec 22 Python
屏蔽Django admin界面添加按钮的操作
Mar 11 Python
Python如何用wx模块创建文本编辑器
Jun 07 Python
python 无损批量压缩图片(支持保留图片信息)的示例
Sep 22 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 CodeBase:将时间显示为"刚刚""n分钟/小时前"的方法详解
2013/06/06 PHP
php简单实现MVC
2015/02/05 PHP
Netbeans 8.2将支持PHP7 更精彩
2016/06/13 PHP
验证token、回复图文\文本、推送消息的实用微信类php代码
2016/06/28 PHP
解决PHP Opcache 缓存刷新、代码重载出现无法更新代码的问题
2020/08/24 PHP
jquery 操作两个select实现值之间的互相传递
2014/03/07 Javascript
easyui datagrid 键盘上下控制选中行示例
2014/03/31 Javascript
jquery获得当前html页面源码的方法
2015/07/14 Javascript
jquery实现动画菜单的左右滚动、渐变及图形背景滚动等效果
2015/08/25 Javascript
Ajax跨域实现代码(后台jsp)
2017/01/21 Javascript
JS简单获取当前年月日星期的方法示例
2017/02/07 Javascript
BootStrap框架中的data-[ ]自定义属性理解(推荐)
2017/02/14 Javascript
JavaScript 函数的定义-调用、注意事项
2017/04/16 Javascript
AngularJs实现聊天列表实时刷新功能
2017/06/15 Javascript
bootstrap treeview 扩展addNode方法动态添加子节点的方法
2017/11/21 Javascript
JS 5种遍历对象的方式
2020/06/16 Javascript
vue2.0 watch里面的 deep和immediate用法说明
2020/10/30 Javascript
基于vue项目设置resolves.alias: '@'路径并适配webstorm
2020/12/02 Vue.js
swiperjs实现导航与tab页的联动
2020/12/13 Javascript
微信小程序学习之自定义滚动弹窗
2020/12/20 Javascript
用Python脚本生成Android SALT扰码的方法
2013/09/18 Python
开始着手第一个Django项目
2015/07/15 Python
Opencv+Python 色彩通道拆分及合并的示例
2018/12/08 Python
Python 时间戳之获取整点凌晨时间戳的操作方法
2020/01/28 Python
Python3监控windows,linux系统的CPU、硬盘、内存使用率和各个端口的开启情况详细代码实例
2020/03/18 Python
python seaborn heatmap可视化相关性矩阵实例
2020/06/03 Python
使用OpenCV实现道路车辆计数的使用方法
2020/07/15 Python
Python内置函数property()如何使用
2020/09/01 Python
Python eval函数介绍及用法
2020/11/09 Python
欧洲最古老的鞋厂:Peter Kaiser
2019/11/05 全球购物
党员干部承诺书
2014/03/25 职场文书
技术负责人任命书
2014/06/05 职场文书
群众路线学习心得体会范文
2014/11/05 职场文书
Html5页面播放M4a音频文件
2021/03/30 HTML / CSS
解决Nginx 配置 proxy_pass 后 返回404问题
2021/03/31 Servers
MySQL数据库压缩版本安装与配置详细教程
2021/05/21 MySQL