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

Tkinter Python Discussion :

Effectuer deux actions avec un seul bouton sur Tkinter


Sujet :

Tkinter Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 6
    Points : 12
    Points
    12
    Par défaut Effectuer deux actions avec un seul bouton sur Tkinter
    Bonjour tout le monde!
    J'aurai besoin de votre aide concernant l'utilisation des boutons sur Tkinter...
    Mon problème est simple mais je cherche en vain depuis la semaine dernière:
    Comment faire pour exécuter deux actions en ne faisant qu'un seul clic sur un seul bouton?

    Par exemple lorsque je clique sur un bouton je voudrais fermer la fenêtre Tk (en utilisant .destroy) et en ouvrir une autre avec des paramètres nouveaux établis dans une fonction que j'appelle...

    J'espère être compréhensible et je vous remercie de m'aider
    Bonne journée!

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 301
    Points : 6 781
    Points
    6 781
    Par défaut
    Salut,

    Tu mets tes deux actions dans une fonction et tu appelles cette fonction avec ton bouton, tout simplement.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 6
    Points : 12
    Points
    12
    Par défaut
    J'ai tenté de coder ça mais ça ne marche pas... Je n'arrive pas à fermer l'ancienne fenêtre :/

    Voici ce que j'ai fait:

    Ma fonction (je crée une nouvelle interface et je demande de détruire l'ancienne
    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
     
    #nom du fichier: fonction:
    from tkinter import *
     
    def Nouvelle_fenêtre ():
        Nouvelle_fenêtre = Tk()
        Nouvelle_fenêtre.geometry('450x450+200+200')
        Nouvelle_fenêtre.title('Test')
     
        Label1=Label(Nouvelle_fenêtre, text='Nouvelle fenêtre')
        Label1.config(font=("times", "20"),fg="blue")
        Label1.pack()
     
        Ancienne_fenêtre.destroy
        return (Nouvelle_fenêtre)
    Et là c'est le programme principal avec le bouton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    #nom du fichier : fenêtre
    from tkinter import *
    from Fonction import Nouvelle_fenêtre
     
    Ancienne_fenêtre = Tk()
    Ancienne_fenêtre.geometry('450x450+200+200')
    Ancienne_fenêtre.title('Test')
     
    Bouton_easy = Button(text="easy", command= Nouvelle_fenêtre)
    Bouton_easy.place(x=100,y=140)
    Merci de ton aide

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par VinsS Voir le message
    Salut,

    Tu mets tes deux actions dans une fonction et tu appelles cette fonction avec ton bouton, tout simplement.
    Pas mieux ici.

  5. #5
    Expert éminent
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    3 885
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 885
    Points : 7 233
    Points
    7 233
    Par défaut
    Il suffit de faire le test sur ton interpréteur avec un code simple pour te rendre compte de la justesse de VinsS

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    >>> def action():
    ...     newFen = Tk()
    ...     oldFen.destroy()
    ... 
    >>> from tkinter import *
    >>> oldFen = Tk()
    >>> Button(oldFen, text="push", command=action).pack()
    Bonne continuation.
    Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
    La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 6
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par fred1599 Voir le message
    Il suffit de faire le test sur ton interpréteur avec un code simple pour te rendre compte de la justesse de VinsS

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    >>> def action():
    ...     newFen = Tk()
    ...     oldFen.destroy()
    ... 
    >>> from tkinter import *
    >>> oldFen = Tk()
    >>> Button(oldFen, text="push", command=action).pack()
    Bonne continuation.
    Je pense que j'ai compris ce que vous me proposez de faire. Je fais le test et je reviens

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 6
    Points : 12
    Points
    12
    Par défaut
    C'est bon je suis arrivé à faire ce que je voulais! Merci de votre aide. Bonne soirée!!

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

Discussions similaires

  1. Réponses: 10
    Dernier message: 25/03/2015, 08h21
  2. Gérer deux actions pour un seul bouton SpeedButton
    Par ptitemeuh dans le forum Débuter
    Réponses: 8
    Dernier message: 04/07/2011, 10h44
  3. repliquer sur deux sites avec un seul cluster (slony)
    Par fridi_mourad dans le forum Requêtes
    Réponses: 0
    Dernier message: 14/02/2009, 14h12
  4. action avec un seul bouton sur plusieurs MC différents
    Par cece2000 dans le forum ActionScript 1 & ActionScript 2
    Réponses: 1
    Dernier message: 22/04/2008, 11h33
  5. utiliser deux formulaire avec une seule action
    Par fouyou dans le forum Struts 1
    Réponses: 4
    Dernier message: 28/05/2007, 20h40

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