1 pièce(s) jointe(s)
Lancement interface Glade par Python
Bonjour,
j'ai acheté l'opensource magazine en kiosque l'autre jour (n°18) et dedans il y a un article "Votre interface Glade lancée par un script autonome (python)". C'est la version améliorée de l'article précédent qui lance l'interface par autoglade (ce qui nécessite de l'avoir installé au préalable) via un script shell, chose que j'avais réussi à faire fonctionner.
Une fois le script python exécuté, la fenêtre dessinée dans glade ne s'affiche pas, alors que j'ai scrupuleusement recopié le script.
Mon fichier .glade est ici: http://josueunhuit.com/autre/essai3.glade.
Mon script python est: (aussi en pièce jointe)
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 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
| #! /usr/bin/env python
# -*- coding: utf-8 -*-
#tentative d'importation des librairies nécessaires à l'affichage
import sys
try:
import pygtk
pygtk.require('2.0')
except:
pass
try:
import gtk
import gtk.glade
except:
sys.exit(1)
import os
chargeur = gtk.glade.XML('essai3.glade', 'dialog1')
fenetre = chargeur.get_widget('dialog1')
#lorsque l'interface s'affiche, on donne un nom à la fenêtre
if fenetre:
fenetre.set_title("Bienvenue")
#action après avoir agi sur les éléments de l'interface
def button3(*args):
print "bouton 3"
def button2(*args):
print "bouton 2"
def button1(*args):
print "bouton 1"
def button4(*args):
gtk.main_quit()
def button5(*args):
os.system('firefox www.7alouest.com')
def dialog1(*args):
gtk.main_quit()
#on affecte une variable à chaque signal envoyé par l'interface
signal_handlers = {
'on_button3_clicked': button3,
'on_button2_clicked': button2,
'on_button1_clicked': button1,
'on_button4_clicked': button4,
'on_button5_clicked': button5,
'on_dialog1_destroy': dialog1
}
#on connecte
chargeur.signal_autoconnect(signal_handlers)
gtk.main() |
Merci!