Exécution séquentielle de fonctions en python
Bonjour,
J'ai créé une interface en pygtk. Quand je clique sur le bouton du correcteur orthographique, il exécute la fonction on_Abc_clicked. Voici le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| def on_Abc_clicked(self, widget):
def abc():
def validAbc(self,widget):
chk_dlg.updateUI()
textbuff = buff.get_buffer()
textbuff.set_text(chkr.get_text())
chk_dlg.destroy()
for zone in [self.desc,self.ingr,self.prep,self.cons]:
if zone.has_focus():
buff=zone
textbuffer = zone.get_buffer()
text = textbuffer.get_text(textbuffer.get_start_iter(),textbuffer.get_end_iter())
printf(["BEFORE:", text])
chkr = SpellChecker("fr",text)
chk_dlg = GtkSpellCheckerDialog()
chk_dlg.set_icon_from_file('favicon1.ico')
chk_dlg.show()
chk_dlg.connect('delete_event', validAbc)
chk_dlg.setSpellChecker(chkr)
chk_dlg.updateUI()
self.desc.grab_focus()
abc()
self.ingr.grab_focus()
abc() |
Ce qui est exécuté en premier est donc ce qui est à la fin, en gras.
C'est là que mon problème se pose : les 2 commandes abc se lancent simultanément et donc 2 fenêtres s'ouvrent en même temps. Ce que je voudrais, c'est que la seconde commande abc se lance quand la première est terminée.
Comment puis-je faire ceci ?
En vous remerciant par avance pour votre aide,
Floréal.