wxPython控件學習之TextCtrl(一)單行文本框


程序代碼:
 

#!/usr/bin/env python
#coding:UTF-8
'''
Created on 2010-5-14

wxPython的文本輸入控件(wx.TextCtrl)操作范例

@author: zyl508@gmail.com
'''

import wx

class TextFrame(wx.Frame):
    def __init__(self):
        wx.Frame.__init__(self,None,-1,"Example For TextCtrl",
                         size=(300,100))
        panel=wx.Panel(self,-1)
        
        #添加用戶名 文本輸入框
        userLabel=wx.StaticText(panel,-1,"User Name:")
        userText=wx.TextCtrl(panel,-1,"Entry your name",
                             size=(175,-1))
        #設置默認的插入點,整數索引,開始位置為0
        userText.SetInsertionPoint(0)
        
        #添加密碼 輸入框
        passwdLabel=wx.StaticText(panel,-1,"Password:")
        passwdText=wx.TextCtrl(panel,-1,'',size=(175,-1),
                               style=wx.TE_PASSWORD)
        #用sizer控制界面布局
        sizer=wx.FlexGridSizer(cols=2,hgap=6,vgap=6)
        sizer.AddMany([userLabel,userText,passwdLabel,passwdText])
        panel.SetSizer(sizer)

class MyApp(wx.App):
    def OnInit(self):
        frame=TextFrame()
        frame.Show(True)
        return True #如果沒有返回值,結果一閃而過,不能駐留窗口

def main():
    app=MyApp()
    app.MainLoop()

if __name__=="__main__":
    main()

****************************************************************

wx.TextCtrl(文本輸入控件)的參數有:

wx.TextCtrl(parent,id,value="",pos=wx.DefaultPosition,size=wx.DefaultSize,

style=0,validator=wx.DefaultValidator,name=wx.TextCtrlNameStr)

 

value: 文本框中的初始文本。

validator:過濾數據以確保鍵入的數據有效。

****************************************************************

///

style參數的可選值:

   wx.TE_CENTER:輸入框中的文本居中對齊。

   wx.TE_LEFT:左對齊,默認行為。

   wx.TE_RIGHT:右對齊。

   wx.TE_PASSWORD:不顯示輸入的文本,以星號遮掩。

   wx.TE_PROCESS_ENTER:輸入框中按回車鍵將觸發事件,否則由窗體控制輸入框數據。

   wx.TE_NOHIDSEL:文本始終高亮顯示,只適用於Windows。

   wx.TE_PROCESS_TAB:輸入框接受制表符,否則由窗體控制TAB切換焦點。

   wx.TE_READONLY:輸入框的內容為只讀,用戶不能修改其中的內容。

///

 

==============在不輸入的情況下如何修改文本框的內容===============

適用於:

     ①style=wx.TE_READONLY模式

     ②根據事件而非用戶鍵盤輸入來改變文本框內容

AppendText(str):尾部添加

Clear():清空輸入框為"",並生成文本更新事件。

EmulateKeyPress(event):產生一個按鍵事件,插入與事件相符的控制符,就如同

                       按了該按鍵一樣。

GetInsertionPoint():得到插入點位置,結果為Int型

SetInsertionPoint(pos): pos為整型索引值,0為開始位置

SetInsertionPointEnd(): 從結尾插入

GetRange(from,to):返回輸入框中位置索引從from到to范圍內的字符串

GetSelection():以元組的形式返回當前輸入框文本位置的索引范圍(開始,結束)。

GetStringSelection():得到選擇的字符串。

SetSelection(from,to):按指定索引范圍(from,to)設置選擇的文本。

GetValue():返回控件中的字符串。

SetValue():覆蓋控件中的文本。

Remove(from,to):刪除指定范圍的文本。

Replace(from,to,value):用指定值替換從from到to范圍的文本。

WriteText(str):效果同AppendText(),只是從當前插入點開始插入。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM