文字色を部分的に変更するには、
wx.TextCtrl()
の引数にて wx.TE_RICH
または wx.TE_RICH2
style を指定して使用する
wx.richtext.RichTextCtrl()
を使用する
wx.html.HtmlWindow()
を使用して、HTMLにて記述する
等が考えられます。
ただ私の環境(Win7)では、 1の方法(下記コード)にて問題なく動作しているのですが、ドキュメントを見る限りは
this style is ignored under other platforms
との記述がありますので、OS X で使用するのであれば、他の方法を選択したほうが良いかもしれません。
Python
1import wx
2
3class MyFrame(wx.Frame):
4 def __init__(self, parent, title):
5 wx.Frame.__init__(self, None, title="TEST", size=(150,80))
6
7 self.text = wx.TextCtrl(self, -1, "HELLO WORLD!!", style=wx.TE_RICH | wx.TE_READONLY)
8 self.text.SetStyle(0, 6, wx.TextAttr("blue"))
9 self.text.SetStyle(6, 11, wx.TextAttr("red"))
10 self.Show()
11
12
13app = wx.App(False)
14frame = MyFrame(None, "MyApp")
15app.MainLoop()
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。