Python GUI编程网 > PyQt5控件_PyQt5控件方法大全 > PyQt5按钮控件QPushButton的类构造和扁平化样式设置
python教程

PyQt5按钮控件QPushButton的类构造和扁平化样式设置

发布博客:2022年11月16日 01:48
阅读:120
作者:Python GUI编程网

之前所说的有效区域设置、点击效果、自动重复、排他性、快捷键等等都属于QPushButton父类QAbstractButton的属性,只是作为子类的QPushButton能拿来直接使用,本章节来说说QPushButton自己所拥有的一些属性和方法,我们先从QPushButton的构造和说起。

之前所说的有效区域设置、点击效果、自动重复、排他性、快捷键等等都属于QPushButton父类QAbstractButton的属性,只是作为子类的QPushButton能拿来直接使用,本章节来说说QPushButton自己所拥有的一些属性和方法,我们先从QPushButton的构造和说起。

一、QPushButton类构造

先看看一下文档中的构造方法。

class QPushButton(QAbstractButton):
     """
     QPushButton(parent: QWidget = None)
     QPushButton(str, parent: QWidget = None)
     QPushButton(QIcon, str, parent: QWidget = None)
     """

首先看的出来QPushButton是继承自QAbstractButton的,然后我们能看到QPushButton中可以传入的参数主要有三种:父控件、图标对象和字符串。这些在前面QAbstractButton学习中已经演示了,比较简单,直接上代码演示一下就知道了。

btn2 = QPushButton(window)
 btn3 = QPushButton('按钮',window)
 btn4 = QPushButton(QIcon('123.jpg'), '按钮', window)

二、QPushButton扁平化样式设置

这个在一些样式开发中有时候会用到,这里就简单说一下QPushButton扁平化样式是如何设置的。主要就是用setFlat()这个函数来设置扁平化样式的,内部传入bool值。这里为了对比我多谢几个按钮,根据按钮提示文本区分。

from PyQt5.Qt import *
 import sys
 
 app = QApplication(sys.argv)
 window = QWidget()
 window.setWindowTitle('QPushButton按钮对象构造 - PyQt5中文网')
 window.resize(600, 450)
 
 btn1 = QPushButton(window)
 btn1.move(80, 60)
 btn1.resize(80, 40)
 btn1.setText('按钮1')
 btn1.setStyleSheet('background-color:green;')
 
 btn2 = QPushButton(window)
 btn2.move(80, 120)
 btn2.resize(80, 40)
 btn2.setText('按钮2')
 btn2.setFlat(True)
 
 
 btn3 = QPushButton(window)
 btn3.move(80, 180)
 btn3.resize(80, 40)
 btn3.setText('按钮3')
 btn3.setStyleSheet('background-color:green;')
 btn3.setFlat(True)
 
 window.show()
 sys.exit(app.exec_())

这里复制代码体会一下,注意btn1是正常带背景颜色的按钮控件,btn2和btn3是进行扁平化样式设置的按钮,可以看出来btn3的样式也没有体现出来,但是按下去的一瞬间会显示出来。

QPushButton