[Python] Glade3 e statusbar
Gian Mario Tagliaretti
g.tagliaretti a gmail.com
Dom 6 Ott 2013 19:09:19 CEST
2013/10/6 Marcello <marcello a linuxvil.it>:
ciao Marcello,
non vedendo tutto il codice posso solo azzardare
> def on_statusbar_show(self, button,obj,data=None):
> self.statusbar = self.ApplicazioneGlade.get_object('statusbar')
self.statusbar = self.ApplicazioneGlade.get_object('statusbar')
crei l'oggetto self.statusbar dentro la funzione, sia self.statusbar
che self.context_id dovresti crearli dentro l'__init__ della classe,
se il controllo dei parecchi file di testo č bloccante (e.g. qualcosa
che fai con subprocess.Popen o familiari) il mainloop potrebbe non far
in tempo a scrivere il messaggio nella statusbar
>
> self.context_id = self.statusbar.get_context_id('statusbar')
> self.statusbar.push(self.context_id, self.MessaggioStatusbar)
>
> def on_VerTab_clicked(self, button):
> self.MessaggioStatusbar = 'Hai premuto Verifica Tabella'
> self.on_statusbar_show(self,button)
> ............. controllo parecchi file di testo
qualcosa del genere
class MyClass (blabla)
def __init__ (blabla, blabla)
self.widgets = Gtk.Builder(blabla)
self.statusbar = self.widgets.get_object('statusbar')
self.context_id = self.statusbar.get_context_id('statusbar')
def funzione_che_controlla_tanti_file(self, blabla)
...................
def on_VerTab_clicked(self, widget, data=None):
self.statusbar.push(self.context_id, 'bla bla bla bla')
> il messaggio sullo statusbar mi appare non immediatamente quando viene
> eseguito ' def on_VerTab_clicked(self, button):'
> ma bensė quando finisce di controllare tutti i file di testo.
cmq i problemi rimarranno se blocchi il mainloop lanciando dei processi esterni
> Questo mi vieta di far vedere sullo statusbar quale file sta elaborando
e questo mi fa pensare che ho ragione, come li lanci questi controlli?
> Un grazie a Gian Mario per tutte le dritte che mi ha dato fino adesso
figurati, siam qui apposta.
ciao
--
Gian Mario Tagliaretti
GNOME Foundation member
gianmt a gnome.org
Maggiori informazioni sulla lista
Python