Python PyQt5标签--为不透明效果设置不透明级别
在Python PyQt5中,我们可以使用标签类 QLabel 为控件设置一些文本和图片等,同时也可以通过设置不透明度来实现一些特效,如渐变、遮罩等。
设置不透明度
使用样例1 - 窗口中设置标签不透明度
具体方法是通过 QLabel.setOpacity(value)
方法设置标签的不透明度,其中 value 为 float 类型的数值,取值范围为 0-1;当 value 为 0 时,标签完全透明;当 value 为 1 时,标签完全不透明。
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QLabel
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setWindowTitle('设置标签不透明度例子')
self.setGeometry(300, 300, 300, 200)
# 垂直布局
vbox = QVBoxLayout(self)
# 创建标签
label = QLabel('标签', self)
# 设置标签的背景为蓝色
label.setStyleSheet('background-color:blue')
# 设置标签不透明度为0.5
label.setOpacity(0.5)
# 在布局上添加标签
vbox.addWidget(label)
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
上述示例中,我们通过 QLabel.setOpacity(value)
方法将标签设置为 0.5 的不透明度,并且将该标签加入到了一个垂直布局中,在窗口中显示。
使用样例2 - 设置多个标签不同不透明度
我们也可以在创建多个标签之后通过 QLabel.setOpacity(value)
方法设置不同的不透明度,下面是使用示例。
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QLabel
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setWindowTitle('设置多标签不透明度例子')
self.setGeometry(300, 300, 300, 200)
# 垂直布局
vbox = QVBoxLayout(self)
# 创建标签并设置其中一个标签的背景为蓝色
label1 = QLabel('标签1', self)
label2 = QLabel('标签2', self)
label3 = QLabel('标签3', self)
label2.setStyleSheet('background-color:blue')
# 设置标签不透明度
label1.setOpacity(0.2)
label2.setOpacity(0.6)
label3.setOpacity(0.8)
# 在布局上添加多个标签
vbox.addWidget(label1)
vbox.addWidget(label2)
vbox.addWidget(label3)
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
在上述示例中,我们分别创建了三个标签,并设置其中一个标签的背景为蓝色,并通过标签的 setOpacity
方法分别设置不同的不透明度,然后将这三个标签依次添加到一个垂直布局中,以此达到设置不同标签不同不透明度的目的。
结语
以上是Python PyQt5标签--为不透明效果设置不透明级别的完整使用攻略。通过本文您已经掌握了设置标签不透明度的方法,以及该方法的使用实例。希望本文对广大Python开发者有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:PyQt5标签–为不透明效果设置不透明级别 - Python技术站