On Fri, 20 Nov 2009 15:10:16 +0100, Federico <jakal...@tiscali.it> wrote: > Salve a tutti, eccomi di nuovo con alcuni problemi. > > Faccio partire nella IDLE di python questo codice > > from wxPython.wx import * > > class MiaApp(wxApp): > def OnInit(self): > frame = wxFrame(None, -1, "Ciao mondo") > # viene mostrata la finestra > frame.Show(1) > # imposta la finestra principale > self.SetTopWindow(frame) > return 1 > > # crea un'istanza della classe MiaApp > app = MiaApp(0) > app.MainLoop() > > Si blocca sia l'IDLE che la SHELL si blocca e devo terminare il processo > come mai?Ho la versione 2.6.4. Ho provato ad utilizzare Eric4 e nella > sua shell funziona benissimo. Qualcuno sa come risolvere questo problema
IDLE ha un suo reactor, basato su TK, che non è compatibile con quello di WX. Nei framework reactor-driven (tutte le interfacce grafice, twisted e probabilmente altri) può esserci un solo reactor alla volta, altrimenti si bloccano l'un l'altro. È strano che con Eric4 funzioni, visto che è basato su Qt. Forse ha delle misure di compatibilità apposite (come twisted che può convivere con i reactor delle interfacce grafiche), ma IDLE è meno raffinato. È meglio usare il prompt python standard (o meglio ancora iPython) per avviare i programmi WX, oppure cerca una IDE basata su WX (ma quando le provai un po' di anni fa non mi piacevano). -- Daniele Varrazzo - Develer S.r.l. http://www.develer.com _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python