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 相关文章推荐
高性能web服务器框架Tornado简单实现restful接口及开发实例
Jul 16 Python
python实现定时播放mp3
Mar 29 Python
对python sklearn one-hot编码详解
Jul 10 Python
python画折线图的程序
Jul 26 Python
在python中使用requests 模拟浏览器发送请求数据的方法
Dec 26 Python
Python基础教程之if判断,while循环,循环嵌套
Apr 25 Python
Python Flask框架模板操作实例分析
May 03 Python
详解python中的index函数用法
Aug 06 Python
python实现静态web服务器
Sep 03 Python
Python3连接Mysql8.0遇到的问题及处理步骤
Feb 17 Python
Python urllib.request对象案例解析
May 11 Python
利用python 下载bilibili视频
Nov 13 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
JAVA/JSP学习系列之七
2006/10/09 PHP
PHP_Cooikes不同页面无法传递的解决方法
2014/03/07 PHP
详解PHP函数 strip_tags 处理字符串缺陷bug
2017/06/11 PHP
PHP基于mcript扩展实现对称加密功能示例
2019/02/21 PHP
Yii框架ACF(accessController)简单权限控制操作示例
2019/04/26 PHP
javascript第一课
2007/02/27 Javascript
用JavaScript隐藏控件的方法
2009/09/21 Javascript
jQuery Trim去除字符串首尾空字符的实现方法说明
2014/02/11 Javascript
jQuery filter函数使用方法
2014/05/19 Javascript
JS实现超炫网页烟花动画效果的方法
2015/03/02 Javascript
jquery实现无限分级横向导航菜单的方法
2015/03/12 Javascript
Three.js学习之网格
2016/08/10 Javascript
VUE2实现事件驱动弹窗示例
2017/10/21 Javascript
在React 组件中使用Echarts的示例代码
2017/11/08 Javascript
基于vue 动态加载图片src的解决方法
2018/02/05 Javascript
JS+HTML5 Canvas实现简单的写字板功能示例
2018/08/30 Javascript
webpack4实现不同的导出类型
2019/04/09 Javascript
Vue项目使用localStorage+Vuex保存用户登录信息
2019/05/27 Javascript
JS实现数组删除指定元素功能示例
2019/06/05 Javascript
nuxt 页面路由配置,主页轮播组件开发操作
2020/11/05 Javascript
Python编程中time模块的一些关键用法解析
2016/01/19 Python
python脚本设置系统时间的两种方法
2016/02/21 Python
浅谈python 里面的单下划线与双下划线的区别
2017/12/01 Python
Django中间件工作流程及写法实例代码
2018/02/06 Python
Python使用pymongo库操作MongoDB数据库的方法实例
2019/02/22 Python
python3代码中实现加法重载的实例
2020/12/03 Python
Html5页面内使用JSON动画的实现
2019/01/29 HTML / CSS
UNIONBAY官网:美国青少年服装品牌
2019/03/26 全球购物
计算机应用专业毕业生求职信
2013/10/24 职场文书
上课迟到检讨书
2014/02/19 职场文书
设备动力科岗位职责范本
2014/02/23 职场文书
2014应届本科生自我评价
2014/09/13 职场文书
创先争优宣传标语
2014/10/08 职场文书
卫生院义诊活动总结
2015/05/07 职场文书
2015年手术室工作总结
2015/05/11 职场文书
变长双向rnn的正确使用姿势教学
2021/05/31 Python