Rumah  >  Artikel  >  pembangunan bahagian belakang  >  pyqt5如何设置控件透明

pyqt5如何设置控件透明

醉折花枝作酒筹
醉折花枝作酒筹asal
2021-04-22 18:24:015340semak imbas

pyqt5设置控件透明方法:首先使用QGraphicsOpacityEffect类设置图形元素的透明效果;然后使用“元素名称.setOpacity(透明值)”设置元素的透明度,参数值在0和“1.0”之间即可。

本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。

PyQT设置控件透明度

PyQT5给控件设置Opacity,方法:QGraphicsOpacityEffect

下面这段示例代码中,myshow是一个QPushButton,给其设置透明度的方法如下:

op = QtWidgets.QGraphicsOpacityEffect()
op.setOpacity(0.5)
myshow.setGraphicsEffect(op)
myshow.setAutoFillBackground(True)

完整示例,可以直接粘贴使用:

from PyQt5 import QtWidgets, QtCore
import sys
from PyQt5.QtCore import *
import time


if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    myshow = QtWidgets.QPushButton('Button')

    myshow.setStyleSheet("""
        padding-left: 10px;
        padding-right: 10px;
        padding-top: 1px;
        padding-bottom: 1px;
        border:1px solid #0073df;
        border-radius:5px;
        background: #167ce9;
        color: #fff;
    """)

    def changeOpacity(_):
        op = QtWidgets.QGraphicsOpacityEffect()
        op.setOpacity(0.5)
        myshow.setGraphicsEffect(op)
        myshow.setAutoFillBackground(True)

    myshow.clicked.connect(changeOpacity)

    layout = QtWidgets.QVBoxLayout()
    layout.addWidget(myshow)
    
    main = QtWidgets.QWidget()
    main.setLayout(layout)
    main.show()
    sys.exit(app.exec_())

相关免费学习推荐:python视频教程

Atas ialah kandungan terperinci pyqt5如何设置控件透明. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn