如何在 PyQt 中设置 qlabel 文本的不透明度?
How to set qlabel text's opacity in PyQt?
我有一个标签,我想设置它 html\css 来自 text
变量的格式化文本。
label = QtGui.QLabel()
text = '''<font face="tahoma" color="#45688E">THIS TEXT</font>'''
label.setText(text)
我需要 THIS 这个词用我的颜色 (#45688E) 着色,TEXT 这个词是透明的。
我的想法是我希望标签在屏幕上只显示一个词,同时我可以通过编程方式获得两个词。
怎么做?
谢谢。
更新 1:photo
代码:
from PyQt4 import QtGui, QtCore
import sys
app = QtGui.QApplication(sys.argv)
window = QtGui.QWidget()
window.resize(300, 400)
window.setWindowTitle('TITLE1')
window_layout = QtGui.QVBoxLayout()
window.setLayout(window_layout)
label = QtGui.QLabel()
text = '''<font face="tahoma"><span style="color:#45688E">THIS</span><span style="opacity:0"> TEXTANOTHER_WORD</span></font>'''
label.setText(text)
window_layout.addWidget(label)
window.show()
sys.exit(app.exec_())
用 span 标签和样式包裹您的第一个单词。在另一个 span 标签中添加所有其他单词并将 span 标签的不透明度设置为 0
'''<font face="tahoma"><span style="color:#45688E">THIS</span><span style="opacity:0">TEXTANOTHER_WORD</span></font>'''
下面的浏览器片段
<font face="tahoma"><span style="color:#45688E">THIS</span><span style="opacity:0">TEXTANOTHER_WORD</span></font>
编辑:
解决方案 2
'''<font face="tahoma"><span style="color:#45688E">THIS</span><span style="display:none">TEXTANOTHER_WORD</span></font>'''
一个有点奇怪的 PyQT 解决方案
稍微将颜色设置为透明会隐藏该文本
style="color:transparent"
例子
text = '''<font face="tahoma" color="red" style="color:green;"><span>THIS</span><span style="color:transparent">TEXT</span></font>'''
下图
我有一个标签,我想设置它 html\css 来自 text
变量的格式化文本。
label = QtGui.QLabel()
text = '''<font face="tahoma" color="#45688E">THIS TEXT</font>'''
label.setText(text)
我需要 THIS 这个词用我的颜色 (#45688E) 着色,TEXT 这个词是透明的。
我的想法是我希望标签在屏幕上只显示一个词,同时我可以通过编程方式获得两个词。
怎么做?
谢谢。
更新 1:photo 代码:
from PyQt4 import QtGui, QtCore
import sys
app = QtGui.QApplication(sys.argv)
window = QtGui.QWidget()
window.resize(300, 400)
window.setWindowTitle('TITLE1')
window_layout = QtGui.QVBoxLayout()
window.setLayout(window_layout)
label = QtGui.QLabel()
text = '''<font face="tahoma"><span style="color:#45688E">THIS</span><span style="opacity:0"> TEXTANOTHER_WORD</span></font>'''
label.setText(text)
window_layout.addWidget(label)
window.show()
sys.exit(app.exec_())
用 span 标签和样式包裹您的第一个单词。在另一个 span 标签中添加所有其他单词并将 span 标签的不透明度设置为 0
'''<font face="tahoma"><span style="color:#45688E">THIS</span><span style="opacity:0">TEXTANOTHER_WORD</span></font>'''
下面的浏览器片段
<font face="tahoma"><span style="color:#45688E">THIS</span><span style="opacity:0">TEXTANOTHER_WORD</span></font>
编辑:
解决方案 2
'''<font face="tahoma"><span style="color:#45688E">THIS</span><span style="display:none">TEXTANOTHER_WORD</span></font>'''
一个有点奇怪的 PyQT 解决方案
稍微将颜色设置为透明会隐藏该文本
style="color:transparent"
例子
text = '''<font face="tahoma" color="red" style="color:green;"><span>THIS</span><span style="color:transparent">TEXT</span></font>'''
下图