PHP前端开发

pyqt5如何设置控件透明

百变鹏仔 2个月前 (01-22) #Python
文章标签 控件
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, QtCoreimport sysfrom PyQt5.QtCore import *import timeif __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视频教程!