Getting String from A TextCtrl Box

折月煮酒 提交于 2019-12-20 10:38:30

问题


How to get the strings from a TextCtrl box? Here is the practice code:

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()

回答1:


TextCtrlInstance.GetValue()



回答2:


Use GetValue(), not GetString()

Look at the API: http://docs.wxwidgets.org/stable/wx_wxtextctrl.html



来源:https://stackoverflow.com/questions/2046338/getting-string-from-a-textctrl-box

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!