IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

update d'un objet en continue


Sujet :

Python

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 51
    Par défaut update d'un objet en continue
    J'ai créer un objet scale de tkinter. Je lui fait prendre la valeur avec consigne.get(). Quand l'utilisateur clique sur un bouton 'calculer' que j'ai créé, il effectue un calcul puis affiche le résultat dans un objet 'label' que j'ai aussi créé.

    Mon problème est le suivant : Je voudrais que le résultat du calcul évolue en temps réél au fur et à mesure que ce qu'on change la place du curseur "label" sans avoir besoin de cliquer sur un bouton pour actualiser le résultat. Mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    # -*- coding: cp1252 -*-
     
    from Tkinter import *
    fen1=Tk()
    def actualiser():
        rpm0=consigne.get()
        rpm=rpm0*2
        resultat.configure(text="Rpm="+str(rpm))
        resultat.update()
        resultat.pack()
    def enregistrer():
        try:
            fen2.destroy()
        except NameError:
            fen2=Tk()
    consigne=Scale(length=400,orient=HORIZONTAL,showvalue=10,from_=10,to=212,tickinterval=50)
    resultat=Label(fen1)
    bt_calculer=Button(fen1,text='Calculer',command=actualiser)
    bt_enregistrer=Button(fen1,text='Enregister',command=enregistrer)
    consigne.pack()
    bt_quitter1=Button(fen1,text='Quitter',command=fen1.quit)
    bt_calculer.pack()
    resultat.pack()
    bt_enregistrer.pack()
    bt_quitter1.pack()
    fen1.mainloop()
    fen1.destroy()
    Dites moi si quelqu'un aurait une idée.


    A bientôt!

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    222
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 222
    Par défaut
    Bonjour,
    Tu peux utiliser command de Scale, ça fonctionne comme commande des Button, mais ça renvoie la valeur du Scale en argument.
    Pour mettre à jour ton Label il vaut mieux utiliser un StringVar avec textvariable:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    # -*- coding: cp1252 -*-
     
    from Tkinter import *
    fen1=Tk()
    def actualiser(rpm0):
    	rpm=int(rpm0)*2
    	rpmVar.set("Rpm="+str(rpm))
     
    def enregistrer():
    	try:
    		fen2.destroy()
    	except NameError:
    		fen2=Tk()
    Scale(length=400,orient=HORIZONTAL,showvalue=10,from_=10,to=212,tickinterval=50, command=actualiser).pack()
    rpmVar = StringVar()
    Label(fen1, textvariable=rpmVar).pack()
     
    Button(fen1,text='Enregister',command=enregistrer).pack()
    bt_quitter1=Button(fen1,text='Quitter',command=fen1.quit).pack()
    fen1.mainloop()
    fen1.destroy()

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 51
    Par défaut Ca marche
    Merci,

    Je n'ai pas tout à fait repris à l'identique le code mais en tout cas ça fonctionne à merveille. Mon résultat s'actualise enfin en temps réel.

    A bientôt

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Update Databindings sur objet perso
    Par a.floranc dans le forum VB.NET
    Réponses: 5
    Dernier message: 24/03/2013, 17h07
  2. [Objective-C] [RestKit 0.20] Update d'un objet stocké dans CoreData
    Par Peerofloo dans le forum Objective-C
    Réponses: 0
    Dernier message: 24/01/2013, 09h58
  3. Réponses: 1
    Dernier message: 20/08/2009, 11h32
  4. Réponses: 2
    Dernier message: 22/05/2009, 02h54
  5. Update intempestif d'objets lors d'un save
    Par Takis dans le forum Hibernate
    Réponses: 15
    Dernier message: 15/04/2009, 11h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo