使用简单的wx.StaticText,如果有更复杂的要求,可以使用wx.html.HTMLWindow之类。另外,wx.StaticText不会接收或者响应鼠标事件。以下是从wxPIA的第7.1.1节摘抄的代码:
其中,wx.StaticText的构造函数是
wx.StaticText(parent, id, label, pos=wx.DefaultPosition,size=wx.DefaultSize, style=0, name="staticText")
**参数说明**
parent 自身的容器
id wxPython identifier.设置为-1,则会自动生成唯一id
label 要显示的文本
pos 位置.使用wx.Point或者tuple
size 尺寸.使用wx.Size或者tuple
style 样式标志位
name name...
需要注意的是,在上述代码中调用的方法都是继承自wx.Window类的,wx.StaticText没有定义任何新方法.
**style标志位说明**
wx.ALIGN_CENTER 文本中间对齐
wx.ALIGN_LEFT 文本左对齐
wx.ALIGN_RIGHT 文本右对齐
wx.ST_NO_AUTORESIZE 使用后,当文本被SetLabel()方法改变后,将不会resize.此标志需要与其他标志位作或运算
wx.StaticText覆盖了SetLabel()方法,当文本改变后将自动resize,除非设置了wx.ST_NO_AUTORESIZE.主要是为了防止文本减少,引起wx.StaticText的长度变化.(wx.StaticText的默认尺寸是文本的尺寸)
还有一个控件是wx.lib.stattext.GenStaticText,是仅仅python才拥有的wx.StaticText的重实现.拥有更加一致的跨平台性(相比标准C++版本中的wx.StaticText),并且可以接收鼠标事件,推荐使用...
还能直接在dc(device context)中使用DrawText(text,x,y)或者DrawRotatedText(text, x, y, angle)方法.后一个方法在显示歪斜的文本时更简单.