wxPython验证程序未为对话的孙子调用
我有这样的想法:wxPython验证程序未为对话的孙子调用,python,user-interface,wxpython,Python,User Interface,Wxpython,我有这样的想法: class ADialog(wx.Dialog): def __init__(self, parent, *args, **kwargs): ... self.editor = APanel(parent=self) ... ... class APanel(wx.Panel): def CreatePanel(self, *args, **kwargs): ... sel
class ADialog(wx.Dialog):
def __init__(self, parent, *args, **kwargs):
...
self.editor = APanel(parent=self)
...
...
class APanel(wx.Panel):
def CreatePanel(self, *args, **kwargs):
...
self.textCtrls = []
for (key, val) in zip(foo, bar):
...
box = wx.TextCtrl(parent=self, value=val, validator=Validator())
....
现在,我需要一个单独的面板,因为文本控件必须动态地更改
问题是,Validator
的Validate()
方法从未被调用
我已经尝试将标志wx.WS\u EX\u VALIDATE\u递归地传递给wx.Dialog.\uuu init\uuuu
,并且还尝试重写adilog的VALIDATE()
方法来调用APanel上的VALIDATE()
,然后重写APanel的VALIDATE()
方法来调用每个文本控件的验证器,但这也不起作用
操作系统:Windows 7
python版本:2.5.4
wxPython版本:2.8.10wx.WS\u EX\u VALIDATE\u递归地是一种扩展样式,因此您需要使用SetExtraStyle对其进行设置,而不是通过将其传递给基类“\uuu init\uuuu”wx.WS\u EX\u VALIDATE\u递归地是一种扩展样式,因此您需要使用SetExtraStyle对其进行设置,而不是通过将其传递给基类“\uu init”__