PyQt5 QSpinBox – 设置自动填充背景属性

PyQt5 QSpinBox – 设置自动填充背景属性

在这篇文章中,我们将看到如何设置旋转盒的自动填充属性,这个属性将使Qt在调用画图事件之前填充旋转盒的背景。使用的颜色是由旋转盒的调色板中的QPalette.Window颜色角色定义的。默认情况下,这个属性是假的。

这个属性应与Qt样式表一起谨慎处理。当一个旋转盒有一个有效的背景或边框图像的样式表时,这个属性会被自动禁用。

为了做到这一点,我们使用setAutoFillBackgroun方法。

语法: spin_box.setAutoFillBackground(True)

参数: 它接受bool参数

返回: 它返回无。

注意: 如果一个自旋盒的父类有一个静态梯度的背景,则该属性不能被关闭(即设置为假)。

下面是实现方法

# importing libraries
from PyQt5.QtWidgets import * 
from PyQt5 import QtCore, QtGui
from PyQt5.QtGui import * 
from PyQt5.QtCore import * 
import sys


class Window(QMainWindow):

    def __init__(self):
        super().__init__()

        # setting title
        self.setWindowTitle("Python ")

        # setting geometry
        self.setGeometry(100, 100, 600, 400)

        # calling method
        self.UiComponents()

        # showing all the widgets
        self.show()

    # method for widgets
    def UiComponents(self):
        # creating spin box
        self.spin = QSpinBox(self)

        # setting geometry to spin box
        self.spin.setGeometry(100, 100, 250, 40)

        # setting prefix to spin
        self.spin.setPrefix("Prefix ")

        # setting suffix to spin
        self.spin.setSuffix(" Suffix")

        # allowing spin box to auto fill background
        self.spin.setAutoFillBackground(True)

        # filling background using palette of spin box
        # and setting its color to the red
        self.spin.setForegroundRole(QPalette.Base)
        p = self.spin.palette()
        p.setColor(self.spin.foregroundRole(), Qt.red)
        self.spin.setPalette(p)


# create pyqt5 app
App = QApplication(sys.argv)

# create the instance of our Window
window = Window()

# start the app
sys.exit(App.exec())

输出:

PyQt5 QSpinBox - 设置自动填充背景属性

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

PyQt5 计数器控件QSPINBox