pyqt5如何设置控件透明-LMLPHP

本教程操作环境: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视频教程

以上就是pyqt5如何设置控件透明的详细内容,更多请关注Work网其它相关文章!

09-05 17:02