Der ToggleButton
stellt eine Mischung aus Button
und RadioButton
bzw. CheckBox
dar. Die Optik entspricht dem eines Button
. Zusätzlich hat der ToggleButton
noch einen
Status, ob er ausgewählt (selected
) ist oder nicht. Im ausgewählten Zustand wird der ToggleButton
wie ein mit der Maus gedrückter Button
gezeichnet. Im nicht ausgewählten Zustand wird der ToggleButton
wie ein normaler Button
gezeichnet. Möchten wir, dass von einer Gruppe ToggleButton
nur
ein einzelner zu einem Zeitpunkt ausgewählt werden kann, können wir die entsprechenden ToggleButton
in einer ButtonGroup
zusammenfassen.
Ein Anwendungsgebiet des ToggleButton
sind Grafik- / CAD-Programme, wo sie anzeigen, welche Aktion
gerade ausgeführt wird. Das nachfolgende Beispiel zeigt die Verwendung von gruppierten ToggleButton
.
import scala.swing._ import javax.swing.ImageIcon object ToggleButtonDemo extends SimpleSwingApplication{ def top = new MainFrame { title = "ToggleButtonDemo" contents = new FlowPanel() { val toggleButton1 = new ToggleButton() toggleButton1.icon = new ImageIcon("c:\\test\\line.gif") val toggleButton2 = new ToggleButton() toggleButton2.icon = new ImageIcon("c:\\test\\circle.gif") val toggleButton3 = new ToggleButton() toggleButton3.icon = new ImageIcon("c:\\test\\box.gif") contents += toggleButton1 contents += toggleButton2 contents += toggleButton3 new ButtonGroup(toggleButton1,toggleButton2,toggleButton3) toggleButton1.selected = true } } }
Der Ablauf des Programms führt zur Anzeige folgenden Fensters: