Funktionsparameter
Verfasst: Montag 22. März 2004, 11:41
Hi,
ich bin noch ziemlicher Python-Newbie und habe ein Problem mit der Parameterübergabe in einem wxWidgets Projekt. Ich glaube es ist nicht wxWidgets spezifisch, deshalb hab ich den Thread erstmal hier eröffnet. Kann ja noch verschoben werden, wenn es doch ein wxWidgets Problem ist.
Also folgenden code hab ich:
Die Methode OnClickGoButton wird korrekt aufgerufen wenn ich einen bestimmten Button drücke. Aus dieser methode will ich nun eine weitere Methode SetUserData aufrufen. So wie es oben geschrieben ist, funktioniert es aber nicht, da python immer die Meldung bringt: "TypeError: SetUserData() takes exactly 2 arguments (3 given)"
Der Code funktioniert erst, wenn ich die Funktion SetUserData so definiere:
Dann besteht die Variable einstring aber aus einem Tuple:
Wie muss ich die Methode richtig definieren, damit ich einfach auf den Parameter zugreifen kann?
Wäre nett, wenn mir jemand einen Tipp geben könnte.
ich bin noch ziemlicher Python-Newbie und habe ein Problem mit der Parameterübergabe in einem wxWidgets Projekt. Ich glaube es ist nicht wxWidgets spezifisch, deshalb hab ich den Thread erstmal hier eröffnet. Kann ja noch verschoben werden, wenn es doch ein wxWidgets Problem ist.
Also folgenden code hab ich:
Code: Alles auswählen
class MyFrame(wx.Frame):
(...)
def OnClickGoButton(self, event):
(...)
mystring = "test"
self.SetUserData(self, mystring)
def SetUserData(self, einstring):
print einstring
Der Code funktioniert erst, wenn ich die Funktion SetUserData so definiere:
Code: Alles auswählen
def SetUserData(self, *einstring):
Code: Alles auswählen
(<__main__.MyFrame instance; proxy of C++ wxFrame instance at _946d58_wxFrame_p>, 'test')
Wäre nett, wenn mir jemand einen Tipp geben könnte.