从TextCtrl框中获取字符串

时间:2010-01-12 02:36:40

标签: python wxpython textctrl

如何从TextCtrl框中获取字符串?这是练习代码:

import wx



class citPanel(wx.Panel):
    def __init__(self, parent, id):
        wx.Panel.__init__(self, parent, id)


        wx.StaticText(self, -1, "Choose put you would like:", (45, 15))

        self.quote = wx.StaticText(self, -1, "1:", wx.Point(275, 180), wx.Size(200, -1))
        self.quote = wx.StaticText(self, -1, "2:", wx.Point(275, 230), wx.Size(200, -1))
        self.quote = wx.StaticText(self, -1, "3:", wx.Point(275, 280), wx.Size(200, -1))




class nextButton(wx.Button):
    def __init__(self, parent, id, label, pos):
        wx.Button.__init__(self, parent, id, label, pos)

class cancelButton(wx.Button):
    def __init__(self, parent, id, label, pos):
        wx.Button.__init__(self, parent, id, label, pos)

class searchBox(wx.TextCtrl):
def __init__(self, parent, id, name, pos):
    wx.TextCtrl.__init__(self, parent, id, name, pos)



class minBox(wx.TextCtrl):
    def __init__(self, parent, id, name, pos):
        wx.TextCtrl.__init__(self, parent, id, name, pos)

class maxBox(wx.TextCtrl):
    def __init__(self, parent, id, name, pos):
        wx.TextCtrl.__init__(self, parent, id, name, pos)


class checkList(wx.Frame):
    def __init__(self, parent, id, title):
        wx.Frame.__init__(self, parent, id, title, size=(600, 600))

        self.panel = citPanel(self, -1)

        self.searchCtrl = searchBox(self.panel, -1, '', (275, 200))
        self.Bind(wx.EVT_TEXT, self.EvtText)
        self.minCtrl = minBox(self.panel, -1, '', (275, 250))
        self.Bind(wx.EVT_TEXT, self.EvtText1)
        self.maxCtrl = maxBox(self.panel, -1, '', (275, 300))
        self.Bind(wx.EVT_TEXT, self.EvtText2)
        nextButton(self.panel, 30, 'Ok', (275, 50))
        cancelButton(self.panel, -1, 'Exit', (275, 75))
        self.Bind(wx.EVT_BUTTON, self.Clicked)



        self.Centre()
        self.Show(True)

    def EvtText(self, event):
        num1 = event.GetString()

    def EvtText1(self, event):
        num2 = event.GetString()


    def EvtText2(self, event):
        num3 = event.GetString()


    def Clicked(self, event):

        combo = num1 + num2 + num3

        print combo


        event.Skip()




app = wx.App()
checkList(None, -1, 'Charlie')
app.MainLoop()

2 个答案:

答案 0 :(得分:20)

TextCtrlInstance.GetValue()

答案 1 :(得分:3)

使用GetValue(),而不是GetString()

查看API: http://docs.wxwidgets.org/stable/wx_wxtextctrl.html