Création
d'entreprise
Posez votre question Signaler

Problème avec un code source python.

calamar31 - Dernière réponse le 2 sept. 2010 à 14:45
Bonjour,
je programme en python et interface tkinter ceci est mon premier code avec tkinter et lorsque je le lance (le lien de mon code http://musicorider.ath.cx/allpythagoreV3.py ) et que je tape admetton 1 dans entrecote1 , entrecote2 et 3 affiche 1 ainsi que messagelabel!
pouvez-vous m'aider
merci
Lire la suite 

Problème avec un code source python »

5 réponses
Réponse
+0
moins plus
déjà la page existe pas, ca aide pas
Ajouter un commentaire
Réponse
+0
moins plus
sur mon ordi sa marche mais bon je vais le copier coller alors le voici:
# -*- coding: cp1252 -*-
#All pythagore V3 (GUI)#
#importation de tkinter et math#
from Tkinter import *
from math import sqrt
#création des variables#
opaf=0 #opaf = opération a faire#
cote1="0" #cote1 , 2 et 3 doivent etre de type String
cote2="0"
cote3="0"
message="0" #message est la variable qui affichera le résultat#
#création des fonctions du programme#
def rectangleoupas():
if (int(cote3)*int(cote3)==int(cote2)*int(cote2)+int(cote1)*int(cote1)):
message = "le triangle de cote " , str(cote1) , " , " , str(cote2) , " , " , str(cote3) , "est rectangle. "
elif (int(cote2)*int(cote2)==int(cote3)*int(cote3)+int(cote1)*int(cote1)):
message = "le triangle de cote " , str(cote1) , " , " , str(cote2) , " , " , str(cote3) , "est rectangle. "
elif (int(cote1)*int(cote1)==int(cote2)*int(cote2)+int(cote3)*int(cote3)):
message = "le triangle de cote " , str(cote1) , " , " , str(cote2) , " , " , str(cote3) , "est rectangle. "
elif (int(cote3)*int(cote3)!=int(cote2)*int(cote2)+int(cote1)*int(cote1)and int(cote2)*int(cote2)!=int(cote3)*int(cote3)+int(cote1)*int(cote1)and int(cote1)*int(cote1)!=int(cote2)*int(cote2)+int(cote3)*int(cote3)):
message = "le triangle de cote " , str(cote1) , " , " , str(cote2) , " , " , str(cote3) , "n'est pas rectangle. "
#début du programme#
fenetre = Tk()
labelcote1=Label(fenetre,text="entrer la cote 1")
entrecote1=Entry(fenetre,textvariable = cote1)
labelcote2=Label(fenetre,text="entrer la cote 2")
entrecote2=Entry(fenetre,textvariable = cote2)
labelcote3=Label(fenetre,text="entrer la cote 3")
entrecote3=Entry(fenetre,textvariable = cote3)
boutton1=Button(fenetre,text="Alors?",command = rectangleoupas())
messagelabel=Label(fenetre,textvariable = message)
labelcote1.grid(row=0,column=0)
entrecote1.grid(row=0,column=1)
labelcote2.grid(row=1,column=0)
entrecote2.grid(row=1,column=1)
labelcote3.grid(row=2,column=0)
entrecote3.grid(row=2,column=1)
boutton1.grid(row=3,column=1)
messagelabel.grid(row=4,column=1)
fenetre.mainloop()
calamar31 - 2 sept. 2010 à 10:33
a et aussi a quoi sert la fonction mainloop() ?
Ajouter un commentaire
Réponse
+0
moins plus
Pour récupérer la valeur d'un entry c'est la méthode get()

exemple:

entree=Entry(fenetre)
entree.pack()

#Recuperation de la valeur entrée par l'utilisateur

valeur=entree.get()

Les textvariables dans tes entry, tu peux les virer.

Mainloop:

(3) La troisième instruction exécute la "boucle principale (mainloop)" (c'est-à-dire, l'event loop), qui est une méthode de l'objet "root" . Tant que l'on est dans la boucle principale, on attend un évènement qui se passe dans (la fenêtre) root. Quand un évènement arrive, il est traité et la boucle continue, en attente de l'évènement suivant. La boucle continue à s'exécuter jusqu'à ce qu'un évènement "destroy" arrive dans le fenêtre d'avant-plan. Un évènement "destroy" ferme une fenêtre. Quand la fenêtre d'avant-plan est détruite, la fenêtre est fermée et on sort de l'event loop.

Voir l'adresse suivante

http://www.ferg.org/thinking_in_tkinter/languages/france/penser_en_tkinter.html
Ajouter un commentaire
Réponse
+0
moins plus
excellente explication merci!!!
Ajouter un commentaire
Ce document intitulé « Problème avec un code source python. » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?