【wxpython】StyledTextCtrl的样式应该如何设置
self.notebook = fnb.FlatNotebook(self.panel,-1,agwStyle = fnb.FNB_X_ON_TAB)
self.control = wx.stc.StyledTextCtrl(self.notebook,style=wx.TE_MULTILINE|wx.TE_LINEWRAP)
#下面这句执行错误,因为StyledTextCtrl没有这个样式方法,不知道StyledTextCtrl应该用什么函数,查了半天也没发现哪个合适。请指点StyledTextCtrl的样式设置是怎么用的。
self.control.SetStyle(-1,-1,wx.TextAttr("wx.TE_WORDWRAP")) wxPython
[解决办法]
import wx
import wx.stc as stc
import wx.lib.agw.flatnotebook as fnb
...
self.notebook = fnb.FlatNotebook(self.panel,agwStyle=fnb.FNB_X_ON_TAB)
control = stc.StyledTextCtrl(self.notebook)
control.SetWrapMode(stc.STC_WRAP_WORD)
...
self.notebook.AddPage(control,'titleXXX', True)
[解决办法]
前面3楼说了,带wx前缀是在c++里用的名称,python模块里的名称作了修改。其实,说到底就是一个整形常量,control.SetWrapMode(1)这样写也行的...
>>> import wx.stc
>>> help(wx.stc)
...
STC_WRAP_CHAR = 2
STC_WRAP_NONE = 0
STC_WRAP_WORD = 1
...