Une Page de Python
Par Jean-Seb le samedi 25 juillet 2009, 13:13 - Tools - Lien permanent
Pour utiliser nativement des interfaces avec Python, il y a
Tkinter.
Pour ceux qui n'aiment pas coder les GUI à la main, il reste les
générateurs d'interface.
Ici, je parle de la mise en oeuvre de Page.
Revue de détail
- La revue sera rapide, j'ai testé uniquement GuiBuilder et Page
GuiBuilder
- Anciennement nommé SpecTcl.
- +1 : il permet de générer des interfaces proportionnelles (le principal intêret de Tk).
- -1 : ne semble plus maintenu, le code généré est assez horrible.
- -1 : les sources ne semblent pas disponibles
Page
- +1 : propose pas mal de controles, y compris les ttk (thêmes pour tk)
- +1 : le code généré est plus propre que celui de GuiBuilder
- +/-1 : d'après la doc, adapté aux projets d'un seul écran (d'où le nom, je suppose). Mais on peut ruser bien sûr.
- On trouve Page ici
IInstallation de Page
Prérequis
- Comme d'habitude, je parle pour les possesseurs de Gentoo.
- Il faut un Tk récent: au moins la version 8.5
- Attention, c'est une version test pour l'instant. Je n'ai pas eu de problèmes en l'installant, cependant.
# eix dev-lang/tk
[I] dev-lang/tk
Available versions: 8.4.15-r1 8.4.18 8.4.18-r1 (~)8.4.19-r1 (~)8.5.7 {debug threads truetype}
Installed versions: 8.5.7(20:24:53 24.07.2009)(truetype -debug -threads)
- Ce qui au passage va vous coller un Tcl d'un niveau de version à peu près équivalent.
- Si vous n'étiez pas à niveau pour Tk, n'oubliez pas de recompiler Python avec le flag tk
- Il vous faudra également la lib pyttk
- Pour l'instant, disponible en version 0.3
- On la trouve ici
- Reprenez l'archive tgz, ça suffira.
Installation
- Dépliez l'archive Page, obtenue sur le site officiel (url donnée plus haut).
- Dépliez l'archive pyttk dans le répertoire racine
Page.
- Vous devez obtenir un sous-répertoire pyttk-0.3 (selon votre version de ''pyttk', bien sûr)
- Lancez le script configure de Page, qui va positionner quelques variables dans le script de lancement de Page.
- Editez le script de lancement de Page.
- Ajoutez le chemin de pyttk, juste avant le exec
export PYTHONPATH="$PYTHONPATH":"$PAGE_HOME"/pyttk-0.3/- Cela permettra de tester le code Python au sein de Page.
Test avec code généré
- Cela ne devrait pas vous poser de problèmes, il faut juste prendre garde à pyttk
- Soit utiliser la variable globale python indiquant le chemin des modules:
- export PYTHONPATH = chemin/vers/pyttk/
- Soit utliser sys.path dans votre script Python.
- sys.path donne l'emplacement des modules au script.
#à mettre au début du script Python import sys sys.path.insert (0, '/chemin/vers/pyttk/')
- Attention : ce n'est pas une bonne idée que de
modifier un fichier qui a été généré.
- Il faudra donc passer par un fichier
main
qui importera à son tour les fichiers générés. - De toutes façons, vous devrez en passer par là pour écrire les fonctions de l'interface.
- Il faudra donc passer par un fichier
We thrash with all the rest
Et le reste ?
demanda le jeune padahouane.RTFM
répondit Iota en se reprenant un pastis.