何かをバインドするときに関数に変数を与えるにはどうすればよいですか? 簡単な例として:
def test(self):
self.MyTextCtrl.Bind(wx.EVT_TEXT, self.something, AnyVariable)
def something(self, event, x)
# do something
print x
ご覧のとおり、値「AnyVariable」を関数「something」に与えて、「x」として使用したいと考えています。これどうやってするの?この例は機能しません。
編集: @ Paul McNett: ええ、私がやろうとしていることは次のようなものです:
def test(self):
self.MyTextCtrl1.Bind(wx.EVT_TEXT, self.something, Variable1)
self.MyTextCtrl2.Bind(wx.EVT_TEXT, self.something, Variable2)
self.MyTextCtrl3.Bind(wx.EVT_TEXT, self.something, Variable3)
def something(self, event, x)
# do something by including x
「MyTextCtrl1」編集時は x=Variable1、「MyTextCtrl2」編集時は x=Variable2、「MyTextCtrl3」編集時は x=Variable3 となります。
もちろん、3 つの異なる関数 ("def something1"、"def something2"、"def something3") を記述して、それらを "MyTextCtrl1"、"MyTextCtrl2"、または "MyTextCtrl3" にバインドすることもできます。しかし、代わりにこの変数を使用すると、はるかに簡単になると思いました;)