habe mal wieder ein kleines Problem.
Ich wuerde gerne via checkbox verschiedene widget aktivieren bzw. deaktivieren je nach zustand der checkbox. Dieses arrangement habe ich fuer verschiedene "tabs" in einem wxNotebook.
Da jeder tab potentiell eine andere anzahl von widgets hat, die man mit Disable() bzw Enable() anrufen kann, dachte ich mir, mache ich eine generelle function mit *args als variable anzahl von argumenten (siehe darunter):
Code: Alles auswählen
def onCheck(self, checkbox, *args, event): # gives a syntax error pointing to event as argument
if checkbox.GetValue: # the checkbox is ticked
for arg in args: # iterate of tuple
arg.Enable()
else: # the checkbox is un-ticked
for arg in args:
arg.Disable()
Der function call waere dann in meiner bluehenden Fantasie, in der alles geht, folgender:
Code: Alles auswählen
wx.EVT_CHECKBOX(self, id, partial(self.onCheck, *args)) # Gives a syntax error
Es waere gut, wenn man das ganze mit einer funktion auffangen koennte anstatt fuer jeden tab eine andere funktion zu schreiben, weil das relativ viele tabs sind und ich wiederholen sehr unuebersichtlich finde.
Ich hoffe, ich habe nichts unglaublich offensichtliches uebersehen und eure zeit vergeudet.
Ich danke schonmal fuer euer feedback.
Gruss
Nebelhom