原文:http://blog.163.com/liuyuhuan0915@126/blog/static/782654482011413103143887 /
文本输入控件wx.TextCtrl
2011-05-13
构造函数:
wx.TextCtrl(parent,
size=wx.DefaultSize,
wx.TextCtrl 的样式:
wx.TE_CENTER:控件中
wx.TE_LEFT:控件中的文本左对齐。默认行为。
wx.TE_NOHIDESEL:文本
wx.TE_PASSWORD:不显示所键入的文本,代替以星号显示。
wx.TE_PROCESS_ENTER:
键时,一个文本输入事件被触发。否则,按键事件内在的由该文本控件或该对话框管
理。
wx.TE_PROCESS_TAB:
时创建(一般意味一个制表符将被插入文本)。否则,tab由对话框来管理,
控件间的切换。
wx.TE_READONLY:文本控件为只读,用户不能修改其中的文本。
wx.TE_RIGHT:
不输入的情况下如何改变文本:
AppendText(text):
Clear():重置控件中的文本为“”。并且生成一个文本更新事件。
EmulateKeyPress(event):
GetInsertionPoint()
SetInsertionPoint(pos)
SetInsertionPointEnd():
GetRange(from,
GetSelection()
GetStringSelection()
SetSelection(from,
GetValue()
SetValue(value):SetValue()
Remove(from,
Replace(from,
WriteText(text):类似于
使用多行或丰富文本样 式
wx.HSCROLL:
wx.TE_AUTO_URL:
wx.TE_DONTWRAP:wx.HSCROLL
wx.TE_LINEWRAP:对于太长的行,以字符为界换行。某些操作系统可能会忽略该样式。
wx.TE_MULTILINE:
wx.TE_RICH:用于Windows下,丰富文本控件用作基本的窗口部件。这允许样式文本的使用。
wx.TE_RICH2:
wx.TE_WORDWRAP:对于太长的行,以单词为界换
在 wx.TextCtrl窗口部件中的文本样式类(wx.TextAttr)
构造函数:
wx.TextAttr(colText,
wx.TextAttr的方法:
GetBackgroundColour(),
GetFont(),
GetTextColour(),
HasBackgroundColour(),
HasFont(),
HasTextColour()。
wx.TextAttr
如果要使用文本样式,就要调用
wx.TextCtrl的一些实用的方法:
GetDefaultStyle()
SetDefaultStyle(style):
GetLineLength(lineNo):返回给定行的长度的整数值。
GetLineText(lineNo):
GetNumberOfLines():返回控件中的行的数量。对于单行,返回1。
IsMultiLine()
IsSingleLine():
PositionToXY(pos):指定文本内的一个整数值位置,返回以元组(列,行)形式的
SetStyle(start,
ShowPosition(pos):引起一个多行控件的滚动,以便观察到
XYToPosition(x,
响应文本事件:
frame.Bind(wx.EVT_TEXT,
事件列表如下:
EVT_TEXT:当控件中
用SetValue()而被改变,都要产生该事件。
EVT_TEXT_ENTER:
按下了回车键时,产生该事件。
EVT_TEXT_URL:
置了,并且wx.TE_AUTO_URL样式
了一个鼠标事件时,该事件被触发。
EVT_TEXT_MAXLEN:
用户试图输入更长的字符串时,该事件被触发。你可能会用这
显示一个警告消息。