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

GUI Python Discussion :

Comment changer la couleur d'un bouton lors d'un clic


Sujet :

GUI Python

  1. #1
    Membre à l'essai
    Femme Profil pro
    Lycéen
    Inscrit en
    Mai 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2014
    Messages : 10
    Points : 11
    Points
    11
    Par défaut Comment changer la couleur d'un bouton lors d'un clic
    Bonjour!

    Je débute en python et je suis chargée de créer un programme qui, lorsque l'on clique sur n'importe quel bouton, il devient bleu.
    Mais je ne sais pas trop comment faire...

    voici mon programme:


    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    from tkinter import*
     
     def couleur_bouton():
         couleur="blue"
         return couleur
     
     
     
     fen=Tk()
     
     couleur="green"
     
     boutonA1=Button(fen,bd=5,width=7,height=3, bg=couleur, command=couleur_bouton)
     boutonA1.grid(row=1, column=1)
     
     boutonB1=Button(fen,bd=5,width=7,height=3, bg=couleur, command=couleur_bouton)
     boutonB1.grid(row=1, column=2)
     
     boutonC1=Button(fen,bd=5,width=7,height=3, bg=couleur, command=couleur_bouton)
     boutonC1.grid(row=1, column=3)
     
     boutonD1=Button(fen,bd=5,width=7,height=3, bg=couleur, command=couleur_bouton)
     boutonD1.grid(row=1, column=4)
     
     boutonE1=Button(fen,bd=5,width=7,height=3, bg=couleur, command=couleur_bouton)
     boutonE1.grid(row=1, column=5)
     
     boutonF1=Button(fen,bd=5,width=7,height=3, bg=couleur, command=couleur_bouton)
     boutonF1.grid(row=1, column=6)
     
     boutonG1=Button(fen,bd=5,width=7,height=3, bg=couleur, command=couleur_bouton)
     boutonG1.grid(row=1, column=7)
     
     boutonH1=Button(fen,bd=5,width=7,height=3, bg=couleur, command=couleur_bouton)
     boutonH1.grid(row=1, column=8)
     
     boutonI1=Button(fen,bd=5,width=7,height=3, bg=couleur, command=couleur_bouton)
     boutonI1.grid(row=1, column=9)
     
     boutonJ1=Button(fen,bd=5,width=7,height=3, bg=couleur, command=couleur_bouton)
     boutonJ1.grid(row=1, column=10)
     
     
     fen.mainloop()

    Je ne sais pas vraiment quoi faire dans ma fonction couleur_bouton...
    Au début j'avais un programme qui créait un bouton de différentes couleurs selon l'entrée de l'utilisateur, mais je ne sais pas comment faire pour changer la couleur d'un bouton quand on clique dessus...
    Je bloque

    Merci de votre aide!

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Pourquoi créer tous ces boutons alors que vous ne savez pas encore en changer la couleur?

    Le début du voyage commence par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    import tkinter as tk
     
    def set_color():
        button['bg'] = 'red'
     
    app = tk.Tk()
    color = 'green'
     
    button = tk.Button(app, text='button', bg=color)
    button['command']=set_color
    button.pack()
     
    app.mainloop()
    Comme vous allez créer plein de boutons, la deuxième étape sera de passer "button" en paramètre de set_color.
    Mais button['command'] devra toujours être une fonction qui sera appelée lorsqu'on clique dessus.
    Un peu de gymnastique:

    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
    import tkinter as tk
     
    def set_color(button):
        def do_it():
             button['bg'] = 'red'
        return do_it
     
    app = tk.Tk()
    color = 'green'
     
    button = tk.Button(app, text='button', bg=color)
    button['command']=set_color(button)
    button.pack()
     
    app.mainloop()
    Maintenant, on va pourvoir créer un tas de buttons:
    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
    import tkinter as tk
     
    def set_color(button):
        def do_it():
             button['bg'] = 'red'
        return do_it
     
    app = tk.Tk()
    color = 'green'
     
    for _ in range(3):
        button = tk.Button(app, text='button', bg=color)
        button['command']=set_color(button) 
        button.pack()
     
    app.mainloop()
    C'est pas compliqué d'avancer à petits pas, si?
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre à l'essai
    Femme Profil pro
    Lycéen
    Inscrit en
    Mai 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2014
    Messages : 10
    Points : 11
    Points
    11
    Par défaut
    C'est très clair!
    En le modifiant un peu j'ai réussit à avoir ma grille de boutons de 11x11

    Merci beaucoup !

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

Discussions similaires

  1. Changer la couleur d'un bouton lors du survol.
    Par DetoX dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 15/05/2009, 20h49
  2. Réponses: 7
    Dernier message: 28/06/2005, 11h53
  3. [phpBB] Comment changer les couleurs
    Par ludolecho dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 19/05/2005, 08h20
  4. comment changer la couleur du crayon?
    Par meli0207 dans le forum MFC
    Réponses: 10
    Dernier message: 07/05/2005, 10h41
  5. Réponses: 2
    Dernier message: 01/12/2004, 22h48

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