Je suis vraiment perplexe, mais la réponse est probablement très simple et je ne la vois pas :
J'ai une série de modules Python qui fonctionnent bien à partir de l'interpréteur Python, mais rien ne se passe lorsqu'ils sont exécutés à partir d'une interface graphique. J'ai essayé de créer un fichier .desktop, d'ajouter des shebangs, de changer les permissions à 777 et de renommer en .pyw
pour tous les modules. Un seul module de test fonctionne correctement, je sais donc qu'il ne s'agit pas d'une erreur de frappe.
Si je clique sur le module principal .pyw
et cliquez sur "Exécuter" dans la boîte de dialogue du système, rien ne se passe. De même, le fichier .py
(et le fichier .desktop
via le menu), rien ne se passe. Voici le début de mon code :
#!/usr/bin/python3
import tkinter as tk, imp, sys
root = tk.Tk()
msg = tk.messagebox
sdg = tk.simpledialog
import capitaliser_cfg as cfg, fileio as io
imp.reload(cfg) ; imp.reload(io)
### GO AND GET COUNTY LIST ####
# Nb: attach to config for simplicity
cfg.counties = io.getfilelist("counties.txt", "London")
if not type(cfg.counties)==list:
k = msg.showerror(cfg.version, cfg.counties)
root.destroy()
root.mainloop()
### GO AND GET DICTIONARY ####
cfg.tempdict = [[],[],[]]
cfg.spelldict = io.getdictionary("addressdict.txt","roda","Road")
if not type(cfg.spelldict)==dict:
k = msg.showerror(cfg.version, cfg.spelldict)
root.destroy()
root.mainloop()
import thinbutton as tb, labelradio as lr, fieldblock as fb, bigbutton as bb
import textblock as tx, padding as pd, widget_tools as wt
import capitaliser_mth as mth
import capitaliser_bnd as bnd
imp.reload(tb) ; imp.reload(lr) ; imp.reload(fb) ; imp.reload(bb)
imp.reload(tx) ; imp.reload(pd) ; imp.reload(wt) ;
imp.reload(mth)
imp.reload(bnd)
Si je put k = msg.showerror("xxxx","yyyy")
après la ligne sdg = tk.simpledialog
mais rien ne se passe, ce qui m'amène à penser que tkinter ne se charge pas pour une raison quelconque.
Quelqu'un a-t-il une idée ?