Tkinter Tutorial - Radiobutton

  1. Tkinter Radiobutton Grundlegendes Beispiel
  2. Tkinter Radiobutton - Wert holen
  3. Tkinter Radiobutton Indikatortyp ändern
  4. Bindung Tkinter Radiobutton Callback Funktion

Sie haben label, button und Checkbutton in den letzten Abschnitten gelernt. Tkinter Widgets haben ziemlich ähnliche Optionen, Eigenschaften oder Methoden, daher konnten wir von diesem Abschnitt an in schnellem Tempo lernen.

Der Radiobuton ist ein einzigartiger Knopf. Er hat mehr als eine Option in der Auswahl, aber der Benutzer konnte nur eine davon auswählen. Wie bei den zuvor vorgestellten Widgets konnte der Radibutton Text oder Bild enthalten und die Callback-Funktion oder -Methode an ihn binden. Diese Callback-Funktion wird automatisch ausgelöst, wenn dieser Button gedrückt wird.

Tkinter Radiobutton Grundlegendes Beispiel

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

radioValue = tk.IntVar() 

 
rdioOne = tk.Radiobutton(app, text='January',
                             variable=radioValue, value=1) 
rdioTwo = tk.Radiobutton(app, text='Febuary',
                             variable=radioValue, value=2) 
rdioThree = tk.Radiobutton(app, text='March',
                             variable=radioValue, value=3)

rdioOne.grid(column=0, row=0)
rdioTwo.grid(column=0, row=1)
rdioThree.grid(column=0, row=2)

app.mainloop()

Das Ergebnis der obigen Radiobutton Basis-Demo ist unten

Tkinter Checkbutton Grundlegendes Beispiel

radioValue = tk.IntVar()

Genau wie Check-Buttons müssen Radio-Buttons Werte eines bestimmten Datentyps mit ihnen assoziieren.

rdioOne = tk.Radiobutton(app, text='January',
                             variable=radioValue, value=1) 
rdioTwo = tk.Radiobutton(app, text='Febuary',
                             variable=radioValue, value=2) 
rdioThree = tk.Radiobutton(app, text='March',
                             variable=radioValue, value=3)

Hier werden hier Knöpfe mit dem Text von January, Febuary und March erstellt. Auswahlknöpfe in der gleichen Gruppe sollen und müssen eindeutige Werte haben.

Frage

Was ist, wenn sie doppelte Werte haben?

Tkinter Radiobutton - Wert holen

Die Radiobuttons in der gleichen Gruppe teilen sich die gleiche Variable, radioValue wie im obigen Beispiel gezeigt, und werden mit der Option value mit unterschiedlichen Werten belegt.

Der Wert des ausgewählten Radiobuttons aktualisiert automatisch die Variable radioValue, die ein tk.IntVar ist.

Der Text der Beschriftung spiegelt automatisch den Wert des ausgewählten Knopfes in den untenstehenden Beispielcodes wider.

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

radioValue = tk.IntVar() 

 
rdioOne = tk.Radiobutton(app, text='January',
                             variable=radioValue, value=0) 
rdioTwo = tk.Radiobutton(app, text='Febuary',
                             variable=radioValue, value=1) 
rdioThree = tk.Radiobutton(app, text='March',
                             variable=radioValue, value=2)


rdioOne.grid(column=0, row=0, sticky="W")
rdioTwo.grid(column=0, row=1, sticky="W")
rdioThree.grid(column=0, row=2, sticky="W")


labelValue = tk.Label(app, textvariable=radioValue)
labelValue.grid(column=2, row=0, sticky="E", padx=40)


app.mainloop()

Die Textvariable des labelValue Labels ist die gleiche mit der variablen Option der Radiobuttons, so dass sich der Labeltext automatisch aktualisieren könnte.

Tkinter Radiobutton_get Wert

Tkinter Radiobutton Indikatortyp ändern

Der Standard-Radio-Button-Indikator ist ein kreisförmiges Loch mit weißem Raum im Inneren, aber er könnte auch durch ein Feld mit Text oder Bild ersetzt werden. Das Textfeld wird angehoben, wenn das Optionsfeld nicht markiert ist, und wird abgesenkt, wenn es gedrückt wird.

Tkinter Tutorial Auswahlknopf angehoben und abgesenkt

rdioOne = tk.Radiobutton(app, text='I am raised',
                             variable=radioValue, value=1,
                             indicatoron = 0) 

Indicatoron ist die Option, den Raido-Knopf mit kreisförmiger Lochanzeige ein- oder auszuschalten. Indicatoron=Indicator on

Bindung Tkinter Radiobutton Callback Funktion

Genauso verhält es sich mit Tkinter Checkbutton in der Option, wie die Button Callback Funktion eingestellt werden kann. Verwenden Sie die Option command=.