wxPython wxTextCtrl 中每行的不同前景色
我有一个多行
wx.TextCtrl()
对象,我设置它的前景和背景颜色来编写字符串。我需要用不同的颜色编写不同的行,
wx.TextCtrl.setForgroundcolor()
也更改所有以前的行颜色。有没有办法解决这个问题?
I have a multiline
wx.TextCtrl()
object which I set it's forground and Background colors for writing strings.I need to write different lines with different colors ,
wx.TextCtrl.setForgroundcolor()
changes all previous lines colors as well.Is there a way around this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
wx.Python中有几种方法可以获取彩色文本。
wx.TextCtrl
与wx.TE_RICH
、wx.TE_RICH2
样式wx.stc.StyledTextCtrl
wx. richtext.RichTextCtrl
wx.HtmlWindow
(在文本中插入颜色标签)wx.ListCrtl
您可以在以下位置获取所有这些示例: wxPython 演示
例如,您可以更改
wx.TextCrtl
的任何部分的前景色和背景颜色:wx.richtext
也很容易使用不同颜色编写线条:如其他答案所示,如果您使用多行文本(而不是多行文本),则使用
wx.ListCrtl
可能是一种非常直接的方法。There are several methods in wx.Python to get colored text.
wx.TextCtrl
withwx.TE_RICH
,wx.TE_RICH2
styleswx.stc.StyledTextCtrl
wx.richtext.RichTextCtrl
wx.HtmlWindow
(inserting color tags in your text)wx.ListCrtl
You can get examples of all of them in the wxPython demo
For example, you can change fore and background colors in any part of a
wx.TextCrtl
:wx.richtext
is also easy to use to write lines with different colors:As indicated in other answer the use of a
wx.ListCrtl
can be a very straighforward method if you work with lines of text (instead of multiline text).如果您需要在插入之前设置线条颜色,您可以更改基本属性:
这是示例:
结果:
If you need set color for line before inserting you can change basic properties:
Here is example:
Result:
wx.TextCtrl
的替代方案是wx.ListCtrl
它有一个每行界面。您可以使用以下命令设置
wx.ListCtrl
的颜色设置ItemBackgroundColour
和
SetItemTextColour
An alternative to
wx.TextCtrl
iswx.ListCtrl
which has a per-line interface.You can set colors of the
wx.ListCtrl
withSetItemBackgroundColour
and
SetItemTextColour