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 :

Comment récupérer la valeur text d'un bouton Tkinter ?


Sujet :

Tkinter Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Janvier 2022
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Janvier 2022
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Comment récupérer la valeur text d'un bouton Tkinter ?
    Bonjour,

    Je créé un programme python avec tkinter mais je dois créer plusieurs boutons avec une boucle for comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for ingredient in valeur_ingredients.keys():
    		ligne = compteur//5
    		colonne = compteur % 5
    		Button(fenetre, text=ingredient, command=lambda : def_ingredient(ingredient).grid(row=ligne, column=colonne)
    		compteur += 1
    Mais je ne sais pas comment récupérer la valeur qu'avait ingredient quand j'ai créé le bouton et si l'utilisateur clique dessus.
    Quelqu'un pourrait m'éclairer SVP?
    Merci d'avance,
    NinThibaut

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 237
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 237
    Points : 36 687
    Points
    36 687
    Par défaut
    Salut,

    Citation Envoyé par NinThibaut Voir le message
    Mais je ne sais pas comment récupérer la valeur qu'avait ingredient quand j'ai créé le bouton et si l'utilisateur clique dessus.
    L'astuce est de geler la variable dans les paramètres par défaut:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                ...., command=lambda ingredient=ingredient: def_ingredient(ingredient).grid(row=ligne, column=colonne)
    l'autre soucis est que widget.grid(...) assignera None à command (et l'action sur le Button ne fera rien).

    note: pour récupérer l'attribut d'un widget, çà se fait via widget.cget ou comme si c'était un dictionnaire widget[...]. Et çà se trouve dans tous les tutos (choisissez en un pour ne pas vous perdre...)

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Janvier 2022
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Janvier 2022
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Merci beaucoup, mon problème est résolu !

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

Discussions similaires

  1. [Python 3.X] Comment récupérer la valeur d'un choix listbox (tkinter) dans une variable?
    Par sultannyc dans le forum Général Python
    Réponses: 3
    Dernier message: 23/05/2016, 08h39
  2. comment récupérer la valeur d'une zone texte ?
    Par jessy212 dans le forum Access
    Réponses: 2
    Dernier message: 24/08/2006, 15h59
  3. comment récupérer la valeur d'un objet text dans crystal XI
    Par Dseb dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 27/07/2006, 11h07
  4. Comment récupérer la valeur d'un bouton radio ?
    Par whbh dans le forum Langage
    Réponses: 2
    Dernier message: 20/01/2006, 23h32
  5. Réponses: 7
    Dernier message: 15/09/2005, 07h37

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