Mr.SpOOn ha scritto: > A me interessa poter istanziare una classe a runtime, ad esempio > cliccando su un bottone. Ogni click, una nuova istanza. Dico che non > va bene usare > > pannello = Pannello() > > perché così legherei l'istanza sempre alla stessa variabile. O sbaglio? > Forse dovrei semplicemente chiamare Pannello() e restituire l'istanza > senza assegnarla ad alcuna variabile e aggiungerla nell'apposito > wxFrame.
Continuo a non capire. *Sembra* che tu voglia generare dei pannelli diversi pertendo da un pannello, per così dire, di traccia e che mette o toglie elementi a seconda dei parametri che gli vengono passati. Se è così, dove sta la complicazione? Nel senso che crei la classe pannello, e nell'__init__ ci fai passare i parametri che ti servono. Poi a seconda di dove vuoi metterlo, lo associarai ad un attributo specifico. Tipo, in pseudo-codice,: class Pannello(wx.Panel): def __init__(self, parent, parametro, parametro2): if parametro: do_something() if parametro2: do_something_else() class Frame1(wx.Frame): def __init__(self, parent): self.pannello = Pannello(self, parametro, parametro2) class Frame2(wx.Frame): def __init__(self, parent): self.pannello = Pannello(self, 'foo', 'bar') In questo modo il pannello del Frame1 è un'istanza "per conto proprio" rispetto al pannello del Frame2. Simone Chiacchiera con i tuoi amici in tempo reale! http://it.yahoo.com/mail_it/foot/*http://it.messenger.yahoo.com _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python