[python] à quoi sert le focus ???
Résolu/Fermé
Todesfall
Messages postés
70
Date d'inscription
lundi 30 avril 2007
Statut
Membre
Dernière intervention
17 septembre 2014
-
24 mai 2007 à 14:30
fazzer - 17 mai 2018 à 00:17
fazzer - 17 mai 2018 à 00:17
A voir également:
- Focus python
- Ce programme est écrit en python. il construit un mot secret dans une variable mais il ne l'affiche pas. modifiez-le pour qu'il affiche le mot secret. exécutez-le. quel est ce mot secret ? ✓ - Forum Python
- Python est introuvable. exúcutez sans argument pour procúder ó l - Forum Python
- \R python ✓ - Forum Python
- Citizen code python - Guide
- Extraire données fichier texte python ✓ - Forum Python
54 réponses
sebsauvage
Messages postés
32893
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 655
30 mai 2007 à 17:05
30 mai 2007 à 17:05
Minute !
J'ai fait une erreur dans mon source précédent.
Je corrige et je republie.
J'ai fait une erreur dans mon source précédent.
Je corrige et je republie.
Todesfall
Messages postés
70
Date d'inscription
lundi 30 avril 2007
Statut
Membre
Dernière intervention
17 septembre 2014
30 mai 2007 à 17:05
30 mai 2007 à 17:05
OK Merci c cool, mais comment détruire la fenetre après que j'ai recup mon entry.
sebsauvage
Messages postés
32893
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 655
30 mai 2007 à 17:08
30 mai 2007 à 17:08
Voilà c'est corrigé. Le menu n'était pas créé correctement:
# -*- coding: iso-8859-1 -*- from Tkinter import * import Tkinter import Tkinter as Tk class propos(Tkinter.Toplevel): def __init__(self,parent): Tkinter.Toplevel.__init__(self,parent) #self.title('A propos de ...') self.parent = parent self.initialize() def initialize(self): test = 0 champNum1 = Tkinter.IntVar() text1 = Tkinter.Label(self, text = "Dossier Machine 2007").grid(row = 0, sticky = W) text2 = Tkinter.Label(self, text = "Part of *** Edition 2007").grid(row = 1, sticky = W) text3 = Tkinter.Label(self, text = "Copyright (c) ***. Tous droits réservés.").grid(row = 2, sticky = W) text4 = Tkinter.Label(self, text = "Version 1.01").grid(row = 3, sticky = W) text5 = Tkinter.Label(self, text = "Licence d'utilisation accordée à :").grid(row = 4, sticky = W) text6 = Tkinter.Label(self, text = " - ***").grid(row = 5, sticky = W) button = Tkinter.Button(self, text = "OK", width = 15, textvariable = champNum1, command = self.destroy) button.grid(row = 6, column = 0) button.focus_set() class monessai(Tkinter.Toplevel): def __init__(self,parent): Tkinter.Toplevel.__init__(self,parent) self.title('test_entry') self.parent = parent self.initialize() def initialize(self): self.champText1 = Tkinter.StringVar() text1 = Tkinter.Label(self, text = "reponse").grid(row = 0, sticky = W) entr1 = Tkinter.Entry(self, textvariable = self.champText1).grid(row = 0, column = 1) button = Tkinter.Button(self, text = "OK", width = 15, command = self.recup_donnee) button.grid(row = 6, column = 0) button.focus_set() def recup_donnee(self): test = self.champText1.get() print test class Application(Tkinter.Tk): """Application principale""" def __init__(self, parent = None): Tkinter.Tk.__init__(self) self.parent = parent self.title('Dossier Machine') self.configure(menu=self.createMenu()) self.can = Canvas(self,bg='light grey', height = 190, width=250, borderwidth = 2) self.can.pack() def createMenu(self): menubar = Tkinter.Menu(self) ### Menu <Fichier> ### me1 = Menu(menubar) me1.add_command(label = 'Nouveau dossier machine', underline = 0) me1.add_command(label = 'Nouveau dossier machine avec aide', underline = 1) me1.add_separator() me1.add_command(label = 'Imprimer', underline = 0) me1.add_separator() me1.add_command(label = 'Quitter', underline = 0, command = self.quit) menubar.add_cascade(label="Fichier", menu=me1) ### Menu <Edition> ### me2 = Menu(menubar) me2.add_command(label = 'Copier', underline = 4) me2.add_command(label = 'Coller', underline = 1) menubar.add_cascade(label="Edition", menu=me2) ### Menu <Aide> ### me3 = Menu(menubar) me3.add_command(label = 'Aide', underline = 0, command = self.essai) me3.add_separator() me3.add_command(label = 'A propos de...', underline = 7, command = self.propos) menubar.add_cascade(label="Aide", menu=me3) return menubar def propos(self): propos(self) def essai(self): monessai(self) if __name__ == '__main__': app = Application() app.mainloop()
sebsauvage
Messages postés
32893
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 655
30 mai 2007 à 17:13
30 mai 2007 à 17:13
OK Merci c cool, mais comment détruire la fenetre après que j'ai recup mon entry.
Voir les lignes que j'ai ajoutée/modifiées en gras:
Voir les lignes que j'ai ajoutée/modifiées en gras:
# -*- coding: iso-8859-1 -*- from Tkinter import * import Tkinter import Tkinter as Tk class propos(Tkinter.Toplevel): def __init__(self,parent): Tkinter.Toplevel.__init__(self,parent) #self.title('A propos de ...') self.parent = parent self.initialize() def initialize(self): test = 0 champNum1 = Tkinter.IntVar() text1 = Tkinter.Label(self, text = "Dossier Machine 2007").grid(row = 0, sticky = W) text2 = Tkinter.Label(self, text = "Part of *** Edition 2007").grid(row = 1, sticky = W) text3 = Tkinter.Label(self, text = "Copyright (c) ***. Tous droits réservés.").grid(row = 2, sticky = W) text4 = Tkinter.Label(self, text = "Version 1.01").grid(row = 3, sticky = W) text5 = Tkinter.Label(self, text = "Licence d'utilisation accordée à :").grid(row = 4, sticky = W) text6 = Tkinter.Label(self, text = " - ***").grid(row = 5, sticky = W) button = Tkinter.Button(self, text = "OK", width = 15, textvariable = champNum1, command = self.destroy) button.grid(row = 6, column = 0) button.focus_set() class monessai(Tkinter.Toplevel): def __init__(self,parent): Tkinter.Toplevel.__init__(self,parent) self.title('test_entry') self.parent = parent self.initialize() def initialize(self): self.champText1 = Tkinter.StringVar() text1 = Tkinter.Label(self, text = "reponse").grid(row = 0, sticky = W) entr1 = Tkinter.Entry(self, textvariable = self.champText1).grid(row = 0, column = 1) button = Tkinter.Button(self, text = "OK", width = 15, command = self.recup_donnee) button.grid(row = 6, column = 0) button.focus_set() def recup_donnee(self): self.valeur = self.champText1.get() self.destroy() class Application(Tkinter.Tk): """Application principale""" def __init__(self, parent = None): Tkinter.Tk.__init__(self) self.parent = parent self.title('Dossier Machine') self.configure(menu=self.createMenu()) self.can = Canvas(self,bg='light grey', height = 190, width=250, borderwidth = 2) self.can.pack() def createMenu(self): menubar = Tkinter.Menu(self) ### Menu <Fichier> ### me1 = Menu(menubar) me1.add_command(label = 'Nouveau dossier machine', underline = 0) me1.add_command(label = 'Nouveau dossier machine avec aide', underline = 1) me1.add_separator() me1.add_command(label = 'Imprimer', underline = 0) me1.add_separator() me1.add_command(label = 'Quitter', underline = 0, command = self.quit) menubar.add_cascade(label="Fichier", menu=me1) ### Menu <Edition> ### me2 = Menu(menubar) me2.add_command(label = 'Copier', underline = 4) me2.add_command(label = 'Coller', underline = 1) menubar.add_cascade(label="Edition", menu=me2) ### Menu <Aide> ### me3 = Menu(menubar) me3.add_command(label = 'Aide', underline = 0, command = self.essai) me3.add_separator() me3.add_command(label = 'A propos de...', underline = 7, command = self.propos) menubar.add_cascade(label="Aide", menu=me3) return menubar def propos(self): propos(self) def essai(self): m = monessai(self) self.wait_window(m) # On attend la fermeture de la fenêtre. print "La valeur entree est ",m.valeur if __name__ == '__main__': app = Application() app.mainloop()
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Todesfall
Messages postés
70
Date d'inscription
lundi 30 avril 2007
Statut
Membre
Dernière intervention
17 septembre 2014
31 mai 2007 à 08:24
31 mai 2007 à 08:24
ok merci c'est vraiment gentil à toi. Tout ce que tu as fait pour moi va beaucoup m'aider alors encore merci. Si j'ai encore des problème je renvoie un message.
sebsauvage
Messages postés
32893
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 655
31 mai 2007 à 09:54
31 mai 2007 à 09:54
Je suis content d'avoir pu aider.
N'hésite pas à consulter le wiki francophone, il y a plein d'informations utiles:
http://wikipython.flibuste.net/
N'hésite pas à consulter le wiki francophone, il y a plein d'informations utiles:
http://wikipython.flibuste.net/
Todesfall
Messages postés
70
Date d'inscription
lundi 30 avril 2007
Statut
Membre
Dernière intervention
17 septembre 2014
31 mai 2007 à 11:56
31 mai 2007 à 11:56
excuse moi mais j'ai un petit problème je te met le code :
Quand je fais fichier nouveau dossier machine, il me demande le nombre de code main et suivant le résultat je lui met il n'affiche pas le nombre correct de fenetre que je veu. Essaye le. Comment faire pour le fasse autant de fois que je veux ?
# -*- coding: iso-8859-1 -*- ################################ # Import des librairies utiles # ################################ import sys, time, os, os.path, shutil from pprint import * #~ import time import locale from Tkinter import * import Tkinter import Pmw class liste_equipement_nb_code(Tkinter.Toplevel): def __init__(self, parent): Tkinter.Toplevel.__init__(self, parent) self.title('Liste des équipements') self.parent = parent self.suite() def suite(self): self.champNum1 = Tkinter.StringVar() text1 = Tkinter.Label(self, text = "Quel est le nombre de code maintenance ? ").grid(row = 0, sticky = W) entr1 = Tkinter.Entry(self, textvariable = self.champNum1, width = 4) entr1.grid(row = 0, column = 1) entr1.focus_set() ok = Tkinter.Button(self, text = "OK", width = 15, command = self.recup_nb_code).grid(row = 1, column = 1) def recup_nb_code(self): self.nb_code = self.champNum1.get() self.destroy() class liste_equipement_code(Tkinter.Toplevel): def __init__(self, parent): Tkinter.Toplevel.__init__(self, parent) self.title('Liste des équipements') self.parent = parent self.suite() def suite(self): self.champText1 = Tkinter.StringVar() self.champText2 = Tkinter.StringVar() self.champText3 = Tkinter.StringVar() text1 = Tkinter.Label(self, text = "Code maintenance : ").grid(row = 0, sticky = W) text2 = Tkinter.Label(self, text = "Equipement à configurer : ").grid(row = 1, sticky = W) text3 = Tkinter.Label(self, text = "Opérations à réaliser : ").grid(row = 2, sticky = W) entr1 = Tkinter.Entry(self, textvariable = self.champText1, width = 7) entr1.grid(row = 0, column = 1) entr1.focus_set() entr2 = Tkinter.Entry(self, textvariable = self.champText2, width = 45).grid(row = 1, column = 1) entr3 = Tkinter.Entry(self, textvariable = self.champText3, width = 45).grid(row = 2, column = 1) ok = Tkinter.Button(self, text = "OK", width = 15, command = self.recup_code).grid(row = 3, column = 1) def recup_code(self): self.code = self.champText1.get() self.equipement = self.champText2.get() self.operation = self.champText3.get() self.destroy() class Application(Tkinter.Tk): """Application principale""" def __init__(self, parent = None): Tkinter.Tk.__init__(self) self.parent = parent self.title('Dossier Machine') self.configure(menu=self.createMenu()) self.can = Canvas(self,bg='light grey', height = 190, width=250, borderwidth = 2) self.can.pack() def createMenu(self): menubar = Tkinter.Menu(self) ### Menu <Fichier> ### me1 = Menu(menubar) me1.add_command(label = 'Nouveau dossier machine', underline = 0, command = self.nouveau_dossier) me1.add_command(label = 'Nouveau dossier machine avec aide', underline = 1) me1.add_separator() me1.add_command(label = 'Imprimer', underline = 0) me1.add_separator() me1.add_command(label = 'Quitter', underline = 0, command = self.quit) menubar.add_cascade(label="Fichier", menu=me1) ### Menu <Edition> ### me2 = Menu(menubar) me2.add_command(label = 'Copier', underline = 4) me2.add_command(label = 'Coller', underline = 1) menubar.add_cascade(label="Edition", menu=me2) ### Menu <Aide> ### me3 = Menu(menubar) me3.add_command(label = 'Aide', underline = 0) me3.add_separator() me3.add_command(label = 'A propos de...', underline = 7) menubar.add_cascade(label="Aide", menu=me3) return menubar def nouveau_dossier(self): equipement_nb_code = liste_equipement_nb_code(self) self.wait_window(equipement_nb_code) nb_code = equipement_nb_code.nb_code print nb_code i = 0 lst_code = [] lst_equipement = [] lst_operation = [] while i < nb_code: equipement_code = liste_equipement_code(self) self.wait_window(equipement_code) i = i+1 print i if __name__ == '__main__': app = Application() app.mainloop()
Quand je fais fichier nouveau dossier machine, il me demande le nombre de code main et suivant le résultat je lui met il n'affiche pas le nombre correct de fenetre que je veu. Essaye le. Comment faire pour le fasse autant de fois que je veux ?
sebsauvage
Messages postés
32893
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 655
31 mai 2007 à 13:24
31 mai 2007 à 13:24
Juste avant le while, ajoute:
Et là tu verra:
Autrement dit tu es en train de comparer une chaine avec un nombre :-)
Pour que ça marche correctement, il faudrait remplacer la ligne:
par:
print type(nb_code),type(i)
Et là tu verra:
<type 'str'> <type 'int'>
Autrement dit tu es en train de comparer une chaine avec un nombre :-)
Pour que ça marche correctement, il faudrait remplacer la ligne:
self.nb_code = self.champNum1.get()
par:
self.nb_code = int(self.champNum1.get())
Todesfall
Messages postés
70
Date d'inscription
lundi 30 avril 2007
Statut
Membre
Dernière intervention
17 septembre 2014
31 mai 2007 à 13:44
31 mai 2007 à 13:44
Merci
Todesfall
Messages postés
70
Date d'inscription
lundi 30 avril 2007
Statut
Membre
Dernière intervention
17 septembre 2014
4 juin 2007 à 10:53
4 juin 2007 à 10:53
Bonjour, ce n'est pas un problème que j'ai cette fois-ci !!!!!!
Lorsque je lance mon programme j'ai plusieurs fenetre qui s'ouvre les unes après les autres et elles ne sont jamais à la même place.
Comment faire pour qu'elle s'ouvre toujours au même endroit ?
Lorsque je lance mon programme j'ai plusieurs fenetre qui s'ouvre les unes après les autres et elles ne sont jamais à la même place.
Comment faire pour qu'elle s'ouvre toujours au même endroit ?
sebsauvage
Messages postés
32893
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 655
4 juin 2007 à 13:45
4 juin 2007 à 13:45
Je ne sais pas désolé.
Peut-être en regarde du côté de la méthode geometry()
Peut-être en regarde du côté de la méthode geometry()
Todesfall
Messages postés
70
Date d'inscription
lundi 30 avril 2007
Statut
Membre
Dernière intervention
17 septembre 2014
7 juin 2007 à 10:21
7 juin 2007 à 10:21
Bonjour,
Est-ce que tu sais si python à une fonction imprimable, c'est t'a dire que les données que l'utilisateur rentre je voudrais qu'il me les imprime sur papier. C'est possible ????
Est-ce que tu sais si python à une fonction imprimable, c'est t'a dire que les données que l'utilisateur rentre je voudrais qu'il me les imprime sur papier. C'est possible ????
Todesfall
Messages postés
70
Date d'inscription
lundi 30 avril 2007
Statut
Membre
Dernière intervention
17 septembre 2014
11 juin 2007 à 16:47
11 juin 2007 à 16:47
Merci pour tout
momoci
Messages postés
3
Date d'inscription
lundi 10 décembre 2007
Statut
Membre
Dernière intervention
24 décembre 2007
23 déc. 2007 à 15:31
23 déc. 2007 à 15:31
merci infiniment pour votre réponse . mais sis je le suprime de mon ordinateur est ce grave...?