Tkinter tutorial - Checkbutton

  1. Tkinter Checkbutton Basis Voorbeeld
  2. Tkinter Checkbutton Selecteren/Deselecteren
  3. Tkinter Checkbutton Status Toggle
  4. Tkinter Controleknop Terugbelfunctie Binding
  5. Wijzig Tkinter Checkbutton Standaardwaarde

De Checkbutton widget is een widget met een waarde. Checkbutton kan tekst of afbeeldingen bevatten. Het kan ook de callback-functie koppelen die moet worden gebeld wanneer op de selectieknop wordt geklikt.

#Schildertip: Verfblik openen, slui...
#Schildertip: Verfblik openen, sluiten en verf bewaren zonder vel te krijgen.

Gebruik om een Checkbutton widget in een bestaand bovenliggend venster te maken

tk.Checkbutton(parent, option, ...)

Tkinter Checkbutton Basis Voorbeeld

import tkinter as tk
 
app = tk.Tk() 
app.geometry('150x100')

chkValue = tk.BooleanVar() 
chkValue.set(True)
 
chkExample = tk.Checkbutton(app, text='Check Box', var=chkValue) 
chkExample.grid(column=0, row=0)
 
app.mainloop()

Tkinter Tutorial Controleknop Basisvoorbeeld

chkValue = tk.BooleanVar() 

Elke selectieknop moet aan een variabele worden gekoppeld. Het datatype van de variabele wordt bepaald door de selectieknop wanneer deze is geselecteerd/uitgeschakeld.

chkValue.set(True)

Hiermee wordt de oorspronkelijke waarde van de selectieknop ingesteld. Omdat het zojuist is toegewezen aan het Boolean gegevenstype, hebt u hier slechts twee opties, True of False.

chkExample = tk.Checkbutton(app, text='Check Box', var=chkValue) 

Nu wordt de instantie van de selectieknop uiteindelijk gemaakt met de variabele die chkValue we hierboven hebben gemaakt.

chkExample.grid(column=0, row=0)

grid is een ander type Tkinter-lay-out managers naast pack geïntroduceerd in de sectie Tkinter-label.

Tkinter heeft drie layout / geometrie managers,

  • pack
  • grid
  • place

We zullen deze lay-out / geometrie-beheerders in een sectie van deze tutorial introduceren.

Tkinter Checkbutton Selecteren/Deselecteren

De gebruiker kan op de knop in de GUI klikken om de knop te selecteren of de selectie ongedaan te maken. Je kan ook de selectieknop in- of uitschakelen met behulp van de methode select() en deselect().

chkExample.select()
print "The checkbutton value when selected is {}".format(chkValue.get())
chkExample.select()
print "The checkbutton value when deselected is {}".format(chkValue.get())
The checkbutton value when selected is True
The checkbutton value when deselected is False

Hier wordt de waarde van de selectieknop verkregen door de get() methode.

Tkinter Checkbutton Status Toggle

De knop Vinkstatus kan worden gewijzigd met select() en deselect() en kan ook worden geschakeld met de toggle() methode.

import tkinter as tk
 
app = tk.Tk() 
app.geometry('150x100')

chkValue = tk.BooleanVar() 
chkValue.set(True)
 
chkExample = tk.Checkbutton(app, text='Check Box', var=chkValue) 
chkExample.grid(column=0, row=0)

print "The checkbutton original value is {}".format(chkValue.get())
chkExample.toggle()
print "The checkbutton value after toggled is {}".format(chkValue.get())
chkExample.toggle()
print "The checkbutton value after toggled twice is {}".format(chkValue.get())

app.mainloop()
The checkbutton original value is True
The checkbutton value after toggled is False
The checkbutton value after toggled twice is True

Tkinter Controleknop Terugbelfunctie Binding

Widget met selectieknop wordt gebruikt om de statussen te selecteren en kan de callback functie ook binden aan de gebeurtenis wanneer deze is geselecteerd / gedeselecteerd, of eenvoudiger, ingeschakeld. Wanneer de status van de selectieknop wordt omgeschakeld, wordt de callback functie geactiveerd.

import tkinter as tk
from _cffi_backend import callback
 
def callBackFunc():
    print "Oh. I'm clicked"
    
app = tk.Tk() 
app.geometry('150x100')

chkValue = tk.BooleanVar() 
chkValue.set(True)
 
chkExample = tk.Checkbutton(app, text='Check Box', 
                            var=chkValue, command=callBackFunc) 
chkExample.grid(column=0, row=0)

app.mainloop()

Elke keer als je op de selectieknop drukt,kan je dat Oh. I'm clicked in de console werd afgedrukt.

Optie command in de klasse Checkbutton is bedoeld om de callback functie of -methode te binden wanneer de knop wordt ingedrukt.

Wijzig Tkinter Checkbutton Standaardwaarde

De standaardwaarde die overeenkomt met de niet-geselecteerde selectieknop is 0, en de standaardwaarde van de geselecteerde selectieknop is 1. En je kan ook de standaardwaarden van de selectieknop en het bijbehorende gegevenstype wijzigen in de andere waarde en/of het gegevenstype.

import tkinter as tk
 
app = tk.Tk() 
app.geometry('150x100')

chkValue = tk.StringVar() 
 
chkExample = tk.Checkbutton(app, text='Check Box', var=chkValue,
                            onvalue="RGB", offvalue="YCbCr") 
chkExample.grid(column=0, row=0)

chkExample.select()
print "The checkbutton value when selected is {}".format(chkValue.get())
chkExample.deselect()
print "The checkbutton value when deselected is {}".format(chkValue.get())

app.mainloop()
The checkbutton value when selected is RGB
The checkbutton value when deselected is YCbCr
chkExample = tk.Checkbutton(app, text='Check Box', var=chkValue,
                            onvalue="RGB", offvalue="YCbCr") 

onvalue en offvalue zijn opties om waarden van de geselecteerde en niet-geselecteerde statussen te wijzigen. Ze konden hebben types data willen Int , String , Float of anderen.

Aandacht

Het gegevenstype Tkinter dat aan de selectieknop is gekoppeld, moet hetzelfde zijn als dat van onvalue en offvalue. Anders meldt het _tkinter.TclError