QToolButton按钮
继承 QAbstractButton
QToolButton是与工具操作相关的按钮,通常和QToolBar搭配使用。QToolButton一般不用来显示文本,而显示图标QIcon
需要 from PyQt5.QtWidgets import QToolButton
请注意不能在QToolButton实例化的时候直接传入文本字符串,因为该控件没有相应的初始化函数。也就是说这样做是错误的:self.test_button = QToolButton('Test', self) 如果要设置文本的话得通过setText()方法。但是setText()方法和setIcon()方法都使用的话,只会显示图标
import sys
from PyQt5.QtGui import QIcon
from PyQt5.QtWidgets import QApplication, QWidget, QToolButton,QMenu,QAction
from PyQt5.QtCore import Qt class Demo(QWidget):
def __init__(self):
super(Demo, self).__init__()
self.resize(100,100)
self.button = QToolButton(self) # 实例化按钮
self.button.move(50,30)
self.button.setIcon(QIcon('大象.ico')) #设置图标,也可以是png图片
self.button.setToolTip('提示文本') #设置提示文本
self.button.setToolButtonStyle(Qt.ToolButtonFollowStyle)#设置按钮风格
#Qt.ToolButtonIconOnly 仅显示图标-默认
#Qt.ToolButtonTextOnly 仅显示文字
#Qt.ToolButtonTextBesideIcon 文本显示在图标旁边
#Qt.ToolButtonTextUnderIcon 文本显示在图标下方
#Qt.ToolButtonFollowStyle 遵循风格 #toolButtonStyle() #获取样式风格 self.button.setArrowType(Qt.UpArrow) #设置箭头
#Qt.NoArrow 无箭头
#Qt.UpArrow 向上箭头
#Qt.DownArrow 向下箭头
#Qt.LeftArrow 向左箭头
#Qt.RightArrow 向右箭头 #arrowType() 获取箭头类型 self.button.setAutoRaise(True) #设置是否自动提升-鼠标在上面时会自动凸起
#autoRaise() 返回是否自动凸起 menu=QMenu(self)
action1=QAction(menu)
action1.setText('新建')
action1.setData([1,2,3]) #给行为绑定数据
action1.triggered.connect(self.A)
menu.addAction(action1)
self.button.setMenu(menu) #给按钮设置菜单
self.button.setPopupMode(QToolButton.MenuButtonPopup) #设置菜单弹出模式
#QToolButton.DelayedPopup 鼠标按住一会才显示-默认
#QToolButton.MenuButtonPopup 有一个专门的指示箭头,点击箭头才显示
#QToolButton.InstantPopup 点了按钮就显示,点击信号不会发射 self.button.triggered.connect(self.B) #点击行为时发出这个信号
#会向槽函数传递被点击的行为 def A(self):
print('点击了新建行为')
def B(self,action):
print('点击了行为',action,action.data()) #action.data() 获取行为绑定的数据 if __name__ == '__main__':
app = QApplication(sys.argv)
demo = Demo()
demo.show()
sys.exit(app.exec_())
天子骄龙
QToolButton按钮的更多相关文章
- QT学习之如何在QToolBar中添加带图标的QToolButton并设置图标大小
在网上查到了三种方法,找到一种比较好理解的. 使用QIcon类: QToolButton *toolBtn1 = new QToolButton(this); //创建QToolButton tool ...
- 第十五篇 -- QListWidget与QToolButton(界面)
效果图: 这还只是一个界面,并没有实现相应功能. 先看下这图的构成吧. 工具栏的就是将Action拖上去,这部分前面已经介绍过了,那就看下面这部分的构图. 1.左侧是一个工具箱(ToolBox)组件, ...
- QT QToolBox类
QToolBox类的创建 //drawer.h #ifndef DRAWER_H #define DRAWER_H #include <QToolBox> #include <QTo ...
- pyqt5的使用目录
pyqt5的安装 我的第一个例子 标签控件QLabel的使用 按钮QPushButton 信号与槽 pyqt5模块介绍 pycharm活动模板 QObject 定时器 QWidget类-坐标系 ...
- [Qt Creator 快速入门] 第5章 应用程序主窗口
对于日常见到的应用程序而言,许多都是基于主窗口的,主窗口中包含了菜单栏.工具栏.状态栏和中心区域等.这一章会详细介绍主窗口的每一个部分,还会涉及资源管理.富文本处理.拖放操作和文档打印等相关内容.重点 ...
- Qt Style Sheet实践(一):按钮及关联菜单
导读 正如web前端开发中CSS(Cascade Style Sheet)的作用一样,Qt开发中也可以使用修改版的QSS将逻辑业务和用户界面进行隔离.这样,美工设计人员和逻辑实现者可以各司其职而不受干 ...
- 自定义QToolButton
最近做界面需要添加很多工具栏按钮,所以自己定义了一个Button 直接上代码 SettingButton.cpp//设置Button的一些参数 #include "SettingButton ...
- Qt Style Sheet实践(一):按钮及关联菜单(24K纯开源,一共四篇)
导读 正如web前端开发中CSS(Cascade Style Sheet)的作用一样,Qt开发中也可以使用修改版的QSS将逻辑业务和用户界面进行隔离.这样,美工设计人员和逻辑实现者可以各司其职而不受干 ...
- Qt控件精讲一:按钮
原地址:http://blog.csdn.net/yuxikuo_1/article/details/17397109 Qt Creater提供6种Button控件.如图1. Button控件介绍 控 ...
随机推荐
- link & auto cards
link & auto cards a link to card link https://docs.embed.ly/docs/cards DD WX <blockquote clas ...
- git worktree 是什么及其使用场景
先上总结: 在git worktree出现之前, git切换分支前后的文件都只存在在当前文件夹下, git worktree出现之后, 我们可以将分支切换到其他文件夹下 比如如果你的项目有很多个版本分 ...
- ansible系列5-开启加速 Ansible 执行速度的功能
SSH pipelining 是一个加速 Ansible 执行速度的简单方法.ssh pipelining 默认是关闭,之所以默认关闭是为了兼容不同的 sudo 配置,主要是 requiretty 选 ...
- BZOJ1069 SCOI2007最大土地面积(凸包+旋转卡壳)
求出凸包,显然四个点在凸包上.考虑枚举某点,再移动另一点作为对角线,容易发现剩下两点的最优位置是单调的.过程类似旋转卡壳. #include<iostream> #include<c ...
- BZOJ2595 WC2008游览计划(斯坦纳树)
斯坦纳树板子题. 考虑状压dp,设f[i][j][S]表示当前在点(i,j)考虑转移,其所在的联通块包含的关键点集(至少)为S的答案. 转移时首先枚举子集,有f[i][j][S]=min{f[i][j ...
- MT【69】斯图姆定理
评:如果说零点存在定理是"只在此山中,云深不知处"的意境.那么斯图姆定理就能处理多项式的零点个数以及定位.
- MYSQL数据插入和更新的语法
tag:原文章地址 经常会遇到一行数据在特定条件下如果存在就更新列,不存在就插入新的行,用replace和duplicate语法都可以实现,但是也是有区别的.如果是数据覆盖就用replace,如果只是 ...
- 【BZOJ2227】[ZJOI2011]看电影(组合数学,高精度)
[BZOJ2227][ZJOI2011]看电影(组合数学,高精度) 题面 BZOJ 洛谷 题解 这题太神仙了. 首先\(K<N\)则必定无解,直接特判解决. 现在只考虑\(K\ge N\)的情况 ...
- [luogu4513]小白逛公园
题目描述 在小新家附近有一条"公园路",路的一边从南到北依次排着n个公园,小白早就看花了眼,自己也不清楚该去哪些公园玩了. 一开始,小白就根据公园的风景给每个公园打了分-.-.小新 ...
- 2018 省选 D1T2 IIIDX
题目大意: 给出k.n个数选择一种字典序最大的排列,使得对于任意的i,di>=d[i/k](下取整 下同) 分析: 很容易想到的是建树,将i的父亲设为[i/k],之后建有向边. 60分贪心: 将 ...