我想为 PyQt5 添加的每一行添加文本颜色
I want to add a color for the text for every new line added PyQt5
我正在尝试弄清楚如何在行编辑中使用 TextEdit 为文本着色,但对于任何新文本,我都会选择颜色。
假设这是一个错误,我希望它是红色的,或者为了警告我希望它是黄色的,并且在正常情况下保持黑色。
另外,如果有可能以红色突出显示文本,我们可以说。
self.main_window.textEdit.append(get_proj)
我正在使用上面的命令在 QlineEdit 中追加文本,有什么东西可以与 TextEdit 一起使用来为文本着色吗?
这个问题很含糊,因为您同时使用了术语 QLineEdit
和 QTextEdit
,它们本质上是两种不同类型的小部件,我假设它的 QTextEdit
小部件,因为 QLineEdit
没有名为 append
.
的关联方法
QTextEdit
支持富文本,因此您可以对 QTextEdit 中的文本使用 css 样式和 html 样式。您可以附加不同样式的不同富文本。为了方便,你可以只创建一些格式化文本,然后将相应的文本传递给python字符串的format
方法,这样的格式化文本就可以创建这样的富文本,并附加到QTextEdit。为您的用例考虑以下示例:
import sys
from PyQt5.QtWidgets import QTextEdit, QApplication
if __name__=='__main__':
app = QApplication([])
textEdit = QTextEdit()
# Create formatted strings
errorFormat = '<span style="color:red;">{}</span>'
warningFormat = '<span style="color:orange;">{}</span>'
validFormat = '<span style="color:green;">{}</span>'
# Append different texts
textEdit.append(errorFormat.format('This is erroneous text'))
textEdit.append(warningFormat.format('This is warning text'))
textEdit.append(validFormat.format('This is a valid text'))
textEdit.show()
sys.exit(app.exec_())
此外,如果你想为每一行的文本进行颜色编码,QTextEdit 有一个 textChanged
信号,你可以将它连接到一个方法,从 QTextEdit 中读取新行并检查有效性的文本,并相应地设置颜色。
我正在尝试弄清楚如何在行编辑中使用 TextEdit 为文本着色,但对于任何新文本,我都会选择颜色。 假设这是一个错误,我希望它是红色的,或者为了警告我希望它是黄色的,并且在正常情况下保持黑色。 另外,如果有可能以红色突出显示文本,我们可以说。
self.main_window.textEdit.append(get_proj)
我正在使用上面的命令在 QlineEdit 中追加文本,有什么东西可以与 TextEdit 一起使用来为文本着色吗?
这个问题很含糊,因为您同时使用了术语 QLineEdit
和 QTextEdit
,它们本质上是两种不同类型的小部件,我假设它的 QTextEdit
小部件,因为 QLineEdit
没有名为 append
.
QTextEdit
支持富文本,因此您可以对 QTextEdit 中的文本使用 css 样式和 html 样式。您可以附加不同样式的不同富文本。为了方便,你可以只创建一些格式化文本,然后将相应的文本传递给python字符串的format
方法,这样的格式化文本就可以创建这样的富文本,并附加到QTextEdit。为您的用例考虑以下示例:
import sys
from PyQt5.QtWidgets import QTextEdit, QApplication
if __name__=='__main__':
app = QApplication([])
textEdit = QTextEdit()
# Create formatted strings
errorFormat = '<span style="color:red;">{}</span>'
warningFormat = '<span style="color:orange;">{}</span>'
validFormat = '<span style="color:green;">{}</span>'
# Append different texts
textEdit.append(errorFormat.format('This is erroneous text'))
textEdit.append(warningFormat.format('This is warning text'))
textEdit.append(validFormat.format('This is a valid text'))
textEdit.show()
sys.exit(app.exec_())
此外,如果你想为每一行的文本进行颜色编码,QTextEdit 有一个 textChanged
信号,你可以将它连接到一个方法,从 QTextEdit 中读取新行并检查有效性的文本,并相应地设置颜色。