Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';t编辑从除_init __(wxPython)之外的其他函数生成的TextCtrl_Python_Function_Wxpython_Textctrl - Fatal编程技术网

Can';t编辑从除_init __(wxPython)之外的其他函数生成的TextCtrl

Can';t编辑从除_init __(wxPython)之外的其他函数生成的TextCtrl,python,function,wxpython,textctrl,Python,Function,Wxpython,Textctrl,我在编辑、输入、甚至单击TextCtrl或任何其他未内置于init函数的小部件时遇到麻烦 假设我有一点: class firstpanel(wx.Panel): def __init__(self, parent): wx.Panel.__init__(self, parent=parent) 我确实在GUI框架中看到了具有适当值的TextCtrl,但我无法修改它。 这就像我有一个看不见的层在上面,不让我通过 我说我缺少一些非常基本的东西,这让人很尴尬。在receivetext中,

我在编辑、输入、甚至单击TextCtrl或任何其他未内置于init函数的小部件时遇到麻烦

假设我有一点:

class firstpanel(wx.Panel):

def __init__(self, parent):
    wx.Panel.__init__(self, parent=parent)

我确实在GUI框架中看到了具有适当值的TextCtrl,但我无法修改它。 这就像我有一个看不见的层在上面,不让我通过


我说我缺少一些非常基本的东西,这让人很尴尬。

receivetext
中,您创建了一个
wx.TextCtrl
的实例,但没有将其添加到
面板中。您也没有保留对实例的引用,因此垃圾收集器会立即销毁该实例

class MyFrame1 (wx.Frame):
    def __init__(self):
        super(MyFrame1, self).__init__()
        fluid_sizer = wx.BoxSizer(wx.HORIZONTAL)
        self.m_textCtrl1 = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0)
        fluid_sizer.Add(self.m_textCtrl1, 0, wx.ALL, 5)
        self.SetSizer(fluid_sizer)
        self.Layout()
该示例显示创建了一个
wx.BoxSizer
,并创建了一个
wx.TextCtrl
。对文本控件的引用存储为
self.m_textCtrl
。文本控件被添加到大小调整器中,使其可见

class MyFrame1 (wx.Frame):
    def __init__(self):
        super(MyFrame1, self).__init__()
        fluid_sizer = wx.BoxSizer(wx.HORIZONTAL)
        self.m_textCtrl1 = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0)
        fluid_sizer.Add(self.m_textCtrl1, 0, wx.ALL, 5)
        self.SetSizer(fluid_sizer)
        self.Layout()