Optionsknöpfe mit Hilfe von Kontrollkästchen und Skripten erzeugen

Aus Geogebra Rheinland-Pfalz
Wechseln zu: Navigation, Suche
§
Das folgende Material ist für die Fortbildungsveranstaltungen des Pädagogischen Landesinstitut in Rheinland Pfalz mit GeoGebra 4.0 erstellt worden. Es handelt sich hier um sogenanntes "graues Material". Das heißt, dass obwohl wir die Unterlagen sorgfältig geprüft und aktualisiert haben, wir keinen Anspruch auf Fehlerfreiheit erheben möchten. Dies würde unsere Möglichkeiten übersteigen.


Kurzinfo
Birgit Lachner.
Diese Seite wurde von Birgit Lachner erstellt.
Aufgabe für Fortgeschrittene Nutzer
Dies ist eine Aufgabe für fortgeschrittene GeoGebra-Nutzer. ... mehr davon hier.

Inhaltsverzeichnis

Aufgabenstellung

Erzeugt man drei Kontrollkästchen in GeoGebra, so sind diese voneinander unabhängig. Man kann eine beliebige Anzahl an Kreutzchen setzen. Dies soll mit Hilfe von Skripting verändert werden, so dass immer nur eines der drei Kontrollkästchen aktiviert ist. Sobald ein anderes angekreuzt wird, werden die andere (bzw. das eine andere) deaktiviert.

Anleitung

Schritt Was ? Wo? Wie?
1 Erzeugen Sie drei Kontrollkästchen Grafikansicht, Zeichenwerkzeug Kontrollkästchen  Tool Check Box to Show Hide Objects.gif  Wählen Sie das Werkzeug Kontrollkästchen um Objekte anzuzeigen/auszublenden  Tool Check Box to Show Hide Objects.gif  aus und klicken in die Grafik-Ansicht. Im erscheinenden Dialog können Sie alles freilassen oder einen Namen (wie im Applet oben) angeben. Klicken Sie auf Okay und erzeugen Sie zwei weitere Kontrollkästchen. Löschen Sie immer eventuell ausgewählte Objekte aus der Liste im Bereich unten, so dass dieser leer ist.
2 Erstellen sie ein Skript, dass bei der Betätigung des ersten Kontrollkästchen die anderen Kreuzchen entfernt. Eigenschaften-DialogSkripting Klicken Sie das erste Kontrollkästchen an. Es sollte den Namen a haben (nicht zu verwechseln mit der Beschriftung!), die anderen b und c. Wählen Sie das Tab Skripting an und geben dort in zwei Zeilen ein.
  • b=false
  • c=false

Klicken Sie auf die  OK - und dann die  Schließen -Taste um den Eigenschaften-Dialog zu schließen.

3 Testen Sie die Funktionsweise des ersten Kontrollkästchen Grafikansicht Wählen Sie die Kontrollkästchen b und c an und klicken dann auf das erste Kontrollkästchen. Egal, ob man bei a ein Kreuzchen setzt oder es entfernt: jedes Mal werden die anderen Kreuzchen entfernt.
4 Ergänzen Sie passende Skripte für die anderen beiden Kontrollkästchen Eigenschaften-DialogSkripting Gehen Sie wieder in den Eigeschaftendialog von a, kopieren die beiden Zeilen und setzen Sie diese bei als Skripte bei den anderen Konrollkästchen ein. Verändern Sie die Namen passend: bei b sollten also a und c den Wert false erhalten.
5 Prüfen Sie nun, ob alle drei Kontrollkästchen zusammen funktionieren. Grafikansicht Wählen Sie nacheinander alle Kontrollkästchen an, ohne Sie wieder zu deaktivieren. Dass soltle automatisch geschehen, wenn Sie ein anderes anwählen.

Erläuterungen: Wichtige Vorraussetzung zum Verstehen des Skriptes hier, ist zu verstehen, was Kontrollkästchen sind. Nämlich sichtbare boolsche Variablen. Bei Punkten ist klar, wie man sie in der Grafik-Ansicht zeichnen kann, Zahlen (wenn sie frei sind!) aber können zum Beispiel nicht eingetragen werden, da ein Punkt in der Grafik-Ansicht ja zwei Werte, die Koordinaten, benötigt. Stattdessen sind "sichtbare" Zahlen in GeoGebra Schieberegler. Und sichtbare boolsche Variablen sind dann eben die Kontrollkästchen. Sie können zwei Werte haben: true, wenn ein Kreuzchen gesetzt ist, und false, falls kein Kreuzchen gesetzt ist. Somit geschieht im Skript nichts anderes, als das Wert der boolschen Variable geändert wird, was dann bewirkt, dass das Kontrollkästchen kein Kreuzchen mehr anzeigt.


Lösung

Einsatz im Unterricht

Konkrete Anwendungen im Unterricht lassen sich nicht nennen, dass dies ja ein rein technisches Thema ist. Da Kontrollkästchen ja primar die Aufgabe haben, Objekte zu verstecken, könnte man so erreichen, dass immer nur eine "Variante" der Gesamtzeichnung sichtbar ist.