PyGTK - RadioButton-Klasse
Ein einzelnes RadioButton-Widget bietet ähnliche Funktionen wie CheckButton. Wenn jedoch mehr als ein Optionsfeld im selben Container vorhanden ist, kann der Benutzer aus einer der verfügbaren Optionen auswählen, die sich gegenseitig ausschließen. Wenn jedes Optionsfeld im Container zur selben Gruppe gehört, werden bei Auswahl eines Optionsfelds andere automatisch abgewählt.
Das Folgende ist ein Konstruktor der Klasse gtk.RadioButton -
gtk.RadioButton(group = None, Label = None, unerline = None)
Geben Sie zum Erstellen einer Schaltflächengruppe Folgendes an group=None Geben Sie für das erste Optionsfeld und für die nachfolgenden Optionen das Objekt des ersten Optionsfelds als Gruppe an.
Wie bei ToggleButton und CheckButton wird auch der RadioButton ausgegeben the toggled signal. Im folgenden Beispiel werden drei Objekte des Widgets gtk.RadioButton in einer VBox platziert. Alle von ihnen sind mit einer Rückruffunktion on_selected () verbunden, um das umgeschaltete Signal zu verarbeiten.
Die Rückruffunktion identifiziert die Bezeichnung des RadioButton-Quell-Widgets und zeigt sie auf der Bezeichnung in der VBox an.
Beispiel
Beachten Sie den folgenden Code -
import gtk
class PyApp(gtk.Window):
def __init__(self):
super(PyApp, self).__init__()
self.set_title("Radio Button")
self.set_default_size(250, 200)
self.set_position(gtk.WIN_POS_CENTER)
vbox = gtk.VBox()
btn1 = gtk.RadioButton(None, "Button 1")
btn1.connect("toggled", self.on_selected)
btn2 = gtk.RadioButton(btn1,"Button 2")
btn2.connect("toggled", self.on_selected)
btn3 = gtk.RadioButton(btn1,"Button 3")
btn3.connect("toggled", self.on_selected)
self.lbl = gtk.Label()
vbox.add(btn1)
vbox.add(btn2)
vbox.add(btn3)
vbox.add(self.lbl)
self.add(vbox)
self.connect("destroy", gtk.main_quit)
self.show_all()
def on_selected(self, widget, data=None):
self.lbl.set_text(widget.get_label()+" is selected")
if __name__ == '__main__':
PyApp()
gtk.main()
Der obige Code generiert die folgende Ausgabe: