Checkbox = 1
Résolu
nicopoppe
-
nicopoppe -
nicopoppe -
Bonjour, je suis nouveau en programmation Python et je n'arrive pas à faire quelque chose : qu'une checkbox soit égal à 1. Par exemple l'utilisateur coche 3 checkbox et on affiche un résultat de 3. Je sais pas si je suis très clair, merci pour vos réponses d'avance..
Configuration: Windows / Chrome 76.0.3809.100
1 réponse
yg_be
Messages postés
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
bonjour, peux-tu partager ton code, en utilisant la coloration syntaxique?
from tkinter import * window = Tk() var1 = IntVar() var2 = IntVar() def two(): print("Total est ", var1.get()+var2.get()) c1 = Checkbutton(window, text="Chaise", variable=var1,command=two) c1.pack() c2 = Checkbutton(window, text="Table", variable=var2,command=two) c2.pack() text = Label(window,text=two) text.pack() mainloop()mais la dernière commande text ne foctionne pas
Une chaine de caractères doit être comprises entre apostrophes ou guillemets.
Pour faire ça de façon plus évolutives
, tu pourrais faire quelque chose comme
from tkinter import * def total(): tt = sum(var.get() for var in items.values()) text['text'] = 'Le Total est de %u' % tt window = Tk() # Tuple des noms d'items noms = ('Chaise', 'Table',) # Dictionnaire nom => var items = {nom:IntVar() for nom in noms} # Cases à cocher for nom, var in items.items(): bt = Checkbutton(window, text=nom, variable=var, command=total) bt.pack() text = Label(window,text='Le total est de 0') text.pack() mainloop()La syntaxe
Est une forme condensée de faire :
tt = 0 for var in items.values(): tt += var.get()Avec ce code, tu peux ajouter d'autres noms dans le tuple noms pour ajouter d'autres cases à cocher.
Bonne continuation.