1

如何在 StyledTextCtrl 中设置文本颜色,但只有一些单词?我的意思是让我们说我有

露西是蓝色的

我只想“蓝色”这个词染成蓝色

4

3 回答 3

1

请参阅 StyledTextCtrl 的 wxPython 演示。它显示了如何做这件事。我认为你正在寻找的东西是这样的:

ed.StartStyling(190, 0xff)
ed.SetStyling(20, 2)

其中 190 是第 190 个字符,您可以为接下来的 20 个字符设置样式。

于 2012-05-10T14:48:50.410 回答
0

在 text_area 是 StyledCtrlText 的地方使用它

self.text_area.StyleSetSpec(stc.STC_P_DEFAULT,"fore:#FF0000")

接下来把你想改变颜色的文字

于 2014-05-07T06:26:00.697 回答
0

要更改线条的样式,您必须获取第一个字节和结束字节的位置。然后,您可以定义从第一个字节 (StartStyling) 开始并应用于整行 (SetStyling) 的样式 (StyleSetSpec)。您必须在结束字节处重新应用默认样式 (0)。这是我的代码:

# Move to line
self.editname.GotoLine(line-1)
# Get position
pos = self.editname.GetCurrentPos()
# Define style 4
self.editname.StyleSetSpec(4, "back:#ff0000")
# Starts style at position pos
self.editname.StartStyling(pos, 0xffff)
# Until posend position, apply style 4
self.editname.SetStyling(posend-pos, 4)
# Restore style 0 after the ending byte of the line
self.editname.SetStyling(posend, 0)
于 2013-11-27T08:49:16.010 回答