QToolButton按钮

Posted liming19680104

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QToolButton按钮相关的知识,希望对你有一定的参考价值。

QToolButton是与工具操作相关的按钮,通常和QToolBar搭配使用。QToolButton一般不用来显示文本,而显示图标QIcon

需要  from PyQt5.QtWidgets import QToolButton

请注意不能在QToolButton实例化的时候直接传入文本字符串,因为该控件没有相应的初始化函数。也就是说这样做是错误的:self.test_button = QToolButton(‘Test‘, self)  如果要设置文本的话得通过setText()方法。但是setText()方法和setIcon()方法都使用的话,只会显示图标

 

 1 import sys
 2 from PyQt5.QtGui import QIcon,QCursor
 3 from PyQt5.QtWidgets import QApplication, QWidget, QToolButton
 4 
 5 
 6 class Demo(QWidget):
 7     def __init__(self):
 8         super(Demo, self).__init__()
 9         self.test_button = QToolButton(self)  # 实例化按钮
10         self.test_button.setCheckable(True)  #设置为标记按钮
11         self.test_button.setIcon(QIcon(大象.ico))  #设置图标,也可以是png图片
12         self.test_button.toggled.connect(self.button_state_func)   #按钮的标记状态发生变化时发出信号
13         print(self.test_button.isCheckable())    #返回按钮是否已经标记,True表示已经标记
14         self.setMouseTracking(True)  # 设置鼠标移动跟踪是否有效
15         self.test_button.setAutoRepeat(True)   #设置按钮是否在用户长按时可以自动重复执行
16 
17 
18     def button_state_func(self):
19         print(self.test_button.isChecked())  #返回按钮的标记状态
20 
21     def wheelEvent (self, event):
22         print(self.test_button.isDown())   #返回按钮是否被按下了。True表示按下了
23 
24 
25 if __name__ == __main__:
26     app = QApplication(sys.argv)
27     demo = Demo()
28     demo.show()
29     sys.exit(app.exec_())

 

以上是关于QToolButton按钮的主要内容,如果未能解决你的问题,请参考以下文章

QToolButton 中的 X 关闭按钮

QToolButton 工具按钮

带有文本的 QToolButton:覆盖最小高度以模仿常规按钮高度

PyQt5 之QToolButton工具按钮

PyQt5 之QToolButton工具按钮

使用 QMenu 检查 QToolButton