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 :

vérification Etat Checkbutton


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    manutentionnaire
    Inscrit en
    Décembre 2020
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : manutentionnaire

    Informations forums :
    Inscription : Décembre 2020
    Messages : 31
    Par défaut vérification Etat Checkbutton
    Bonjour,

    je test le widget Checkbutton sur un TopLevel.
    je me suis inspiré de ceci dans une frame principal
    https://www.delftstack.com/fr/tutori...r-checkbutton/

    mon test sur une Toplevel intialise le widget Checkbutton avec le carré rempli entièrement en bleu alors qu'il devrait être vide.

    le but est de capter l'état du widget selon le choix de l'utilisateur.

    voici le code "setup.py" :

    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
    45
    46
    47
     
    # coding:utf-8
    #version 3.x python
     
    # ==================================================
    #                                         ID python
    # ==================================================
    from tkinter import *
    import tkinter as tk
    from tkinter import ttk
     
    import Maintenances
     
    # ==================================================
    #                                  Fenêtre Principal - Configuration
    # ==================================================
    root = tk.Tk()                                                                                                    # Crée une instance Tk class
    root.title("Principal")
    root.resizable(False, False)                                                                                 # Fenêtre verrouillée
     
    window_height = 150
    window_width = 150
     
    screen_width = root.winfo_screenwidth()
    screen_height = root.winfo_screenheight()
     
    x_cordinate = int((screen_width/2) - (window_width/2))
    y_cordinate = int((screen_height/2) - (window_height/2))
     
    root.geometry("{}x{}+{}+{}".format(window_width, window_height, x_cordinate, y_cordinate))
     
    def New_Maintenances():
    	Maintenances.Maintenances_Contenu()
     
    # ==================================================
    #                                  Frames
    # ==================================================
     
    # --- Frame vertival droite ---
    LeftFrame = tk.LabelFrame(root, text="[+++]", font=('verdana', 8, ''), foreground="blue", relief=SOLID, borderwidth=0)
    LeftFrame.place(x=5, y=5, width=123, height=200)
     
    # Buttons
    Bt4 = tk.Button(LeftFrame, width=16, text="checkbutton", font=('verdana', 8, ''), command=New_Maintenances)
    Bt4.grid(row=4, column=0)
     
    root.mainloop()
    voici le code "Maintenance.py" :

    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
     
    # coding:utf-8
    # version 3.x python
     
    from tkinter import *
    import tkinter as tk
    from tkinter.ttk import *
    from tkinter.ttk import Button
    from tkinter import Toplevel
     
    def Maintenances_Contenu():
     
        Maintenance_Frame = tk.Toplevel()
        Maintenance_Frame.title('Toplevel')
        Maintenance_Frame.geometry("200x200+30+30")                                                                    # ("X Y+ 30+30")  561x305
        Maintenance_Frame.resizable(width=False, height=False)                                                         # Fenêtre verrouillée
        Maintenance_Frame.attributes("-toolwindow", 1)                                                                       # Supprime les boutons Réduire/Agrandir
        Maintenance_Frame.attributes("-topmost", 1)                                                                           # au priemier plan
     
        # ==============================================================
        #                                                            Cadres
        # ==============================================================
     
     
        FrameForm = Frame(Maintenance_Frame,  width=910)  #, relief=SOLID, borderwidth=1)
        FrameForm.grid(row=1, column=0)
     
        FrameRight = LabelFrame(FrameForm, text="[----]", width=550, height=304, relief=SOLID, borderwidth=1)
        FrameRight.grid(row=0, column=1, sticky=W)
     
        chkValue = tk.BooleanVar()
        chkValue.set(False)
     
        print("The checkbutton original value is {}".format(chkValue.get()))
        print("Etat d'origine --> Désactivé :", chkValue.get())
        print("\n")
     
        chkExample = Checkbutton(FrameRight, text='texte', var=chkValue)
        chkExample.place(x=2, y=102)
    merci

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 752
    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 752
    Par défaut
    Salut,

    Citation Envoyé par LS_Soleil Voir le message
    mon test sur une Toplevel intialise le widget Checkbutton avec le carré rempli entièrement en bleu alors qu'il devrait être vide.
    Dans le module modifiez juste le code ligne 31:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        global chkValue
        chkValue = tk.BooleanVar()
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. Vérification de l'etat des JComboBox dans JTable
    Par nicotine002 dans le forum Composants
    Réponses: 5
    Dernier message: 26/01/2006, 11h47
  2. Existe t 'il un bon générateur d'état WEB ?
    Par plichtal dans le forum Autres outils décisionnels
    Réponses: 2
    Dernier message: 10/01/2003, 14h31
  3. [Datareport] Etat plus large que le papier
    Par SpaceFrog dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 09/09/2002, 11h45
  4. bare d'etat
    Par parasito16211 dans le forum Composants VCL
    Réponses: 4
    Dernier message: 19/07/2002, 08h02
  5. C'est quoi exactement un générateur d'états
    Par Henry Cesbron Lavau dans le forum Outils de restitution et d'analyse
    Réponses: 0
    Dernier message: 02/04/2002, 19h15

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