私はこのような2つのクラスを持っています:
class ClassNrOne(wx.Frame):
def __init__(self,parent,id):
wx.Frame.__init__(self,parent,id,'Title',size=(1024,600))
self.panel = wx.Panel(self,size=(1024,600))
self.mybutton = wx.Button(self.panel,label="OK",pos=(215,160),size=(80,40))
self.Bind(wx.EVT_BUTTON, ClassNrTwo.do, self.mybutton)
class ClassNrTwo(wx.Panel):
def __init__(self,parent,id):
wx.Panel.__init__(self, parent,id)
self.newpanel = wx.Panel(self,size=(1024,600))
def do(self,event):
# do something
これを実行しようとすると、「'ClassNrOne' オブジェクトに属性 'ClassNrTwo' がありません」というエラー メッセージが表示されます。逆方向に試してみると -> self.Bind(wx.EVT_BUTTON, do.ClassNrTwo, self.mybutton) 「グローバル名 'do' が定義されていません」というメッセージが表示されます。別のクラスからイベントを呼び出すにはどうすればよいですか?
これに関する 2 番目の質問: 「mybutton」がクリックされたときに ClassNrTwo から「__init__」を呼び出すことも可能ですか?
編集:小さな質問をすべて1つの大きな質問にまとめました: https://stackoverflow.com/questions/12604139/need-tutorial-for-menubar-handling-panel-building