Benutzer-Werkzeuge

Webseiten-Werkzeuge


de:gui-verwendung

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:gui-verwendung [2015/01/01 18:06] – [JPanel] roehnerde:gui-verwendung [2022/09/02 10:32] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 1: Zeile 1:
 +**Hinweis**: Die GUI-Komponenten von JavaFX werden unter [[JavaFX]] beschrieben.
 +
 ==== JLabel ==== ==== JLabel ====
 {{:de:Jlabelicon.png}}  {{:de:Jlabelicon.png}} 
Zeile 8: Zeile 10:
  
 Mit der Methode setLocation(int x, int y) der JLabel-Komponente kann man ein Bild animieren. Mit der Methode setLocation(int x, int y) der JLabel-Komponente kann man ein Bild animieren.
 +<html><img src="http://vg08.met.vgwort.de/na/e6e9facc1aea42109ec8cfe694337370" width="1" height="1" alt=""></html>
 \\ \\
 \\ \\
Zeile 36: Zeile 39:
 Beispiel: Beispiel:
 <code java>nfSumme.setDouble(Summe);    // maximale Anzahl von Nachkommastellen: 3657.42323426347834     <code java>nfSumme.setDouble(Summe);    // maximale Anzahl von Nachkommastellen: 3657.42323426347834    
-  nfSumme.setDouble(Summe, 2); // zwei Nachkommastellen:                3657.42 </code>+nfSumme.setDouble(Summe, 2); // zwei Nachkommastellen:                3657.42 </code>
 \\ \\
 ---- ----
Zeile 53: Zeile 56:
 ---- ----
 ==== JButton ==== ==== JButton ====
-{{:de:Jbuttonicon.png}} +{{:de:Jbuttonicon.png}} Jede JButton-Komponente erhält automatisch eine Ereignismethode für das actionPerformed-Ereignis, das beim Anklicken eines Buttons erzeugt wird. Beim Doppelklicken eines Buttons im GUI-Formular wird der Cursor an den Anfang der zugehörigen Ereignismethode platziert.
- +
-Jede JButton-Komponente erhält automatisch eine Ereignismethode für das actionPerformed-Ereignis, das beim Anklicken eines Buttons erzeugt wird. Beim Doppelklicken eines Buttons im GUI-Formular wird der Cursor an den Anfang der zugehörigen Ereignismethode platziert.+
  
 Beispiel: Beispiel:
Zeile 75: Zeile 76:
 ---- ----
  
-==== JRadioButton & JButtonGroup ====+==== Buttongroup ====
 {{:de:radiobuttonde.png}} {{:de:radiobuttonde.png}}
-Radiobuttons bieten verschiedene Auswahlmöglichkeitenaus denen man eine Option auswählen kann. +Eine Buttongroup gruppiert Radiobuttons oder Checkboxen. Setzen Sie das Attribut Checkboxes auf truewenn Sie eine Gruppe von Checkboxen wünschenGeben Sie Ihre Optionen mit dem Items-Attribut ein.
-Zur Gruppierung von Radiobuttons muss man eine unsichtbare ButtonGroup-Komponente {{:de:buttongroup.png}} in das Formular aufnehmen. +
-Den Namen dieser Buttongroup-Komponenten gibt man bei jeder JRadioBuootn-Komponente im Object-Inspector beim Attribut //Buttongroup// an.+
  
-Der Java-Editor fügt diese Methode in den Quelltext ein:+Für Radiobuttons fügt der Java-Editor diese Methode in den Quelltext ein:
  
-<code java>  public String buttonGroup1_getSelectedRadioButtonLabel() { ... }</code>+<code java>  public String buttonGroup1BG_getSelectedButtonGroupLabel() { ... }</code>
  
 Damit lässt sich dann ganz einfach die ausgewählte Option einer Buttongroup ermitteln. Beispiel: Damit lässt sich dann ganz einfach die ausgewählte Option einer Buttongroup ermitteln. Beispiel:
  
-<code java>  if (bgFarbe_getSelectedRadioButtonLabel().equals("grün"))</code>+<code java>  if (bgFarbeBG_getSelectedButtonGroupLabel().equals("grün"))</code>
 \\ \\
 ---- ----
- 
 ==== JList ==== ==== JList ====
 {{:de:list.png}} {{:de:list.png}}
Zeile 206: Zeile 204:
 Mit Hilfe des Deckfarbkastens – sprich Grafikkontextes g – kann man dann beispielsweise ein Rechteck zeichnen: Mit Hilfe des Deckfarbkastens – sprich Grafikkontextes g – kann man dann beispielsweise ein Rechteck zeichnen:
  
-<code java>  g.fillRect(xm-w/2ym-h/2wh);</code>+<code java>  g.fillRect(10050200250);</code>
  
 Minimiert man das Anwendungsfenster mit einer Canvas-Komponente und stellt dann das Fenster wieder dar, so ist der Inhalt der Zeichenfläche verschwunden. Will man dies vermeiden, so muss man eine Unterklasse von Canvas erstellen und in ihr mit der Methode //paint(Grahics g) // die Zeichnung erstellen. Eine solche Klasse kann über die rechte Maustaste auf das Canvas-Symbol in das GUI-Formular aufgenommen werden.  Minimiert man das Anwendungsfenster mit einer Canvas-Komponente und stellt dann das Fenster wieder dar, so ist der Inhalt der Zeichenfläche verschwunden. Will man dies vermeiden, so muss man eine Unterklasse von Canvas erstellen und in ihr mit der Methode //paint(Grahics g) // die Zeichnung erstellen. Eine solche Klasse kann über die rechte Maustaste auf das Canvas-Symbol in das GUI-Formular aufgenommen werden. 
Zeile 214: Zeile 212:
 \\ \\
 ---- ----
-==== JTable ==== 
-{{:de:jtableicon.png}} Mit einer JTable-Komponente kann man Tabellen darstellen.  
  
-Im Object-Inspector stellt man die gewünschte Anzahl von Spalten (ColCount) und Zeilen (RowCount) ein. Im Attribut //Columns// gibt man die Namen der Spalten ein. Setzt man //AutoCreateRowSorter// auf true, so kann man nach den Spaltennamen sortieren.+==== Turtle ====
  
-Mit der Methode //setValueAt(Object aValue, int row, int column)// kann man einen Wert in die Zelle an der Position (row, column) setzen und mit //getValueAt(int row, int column)// lesen. getSelectedRow() liefert den Index der ersten ausgewählten Zeile.+{{:de:fxturtle.png}}
  
-Beispiele: "Anna" wird in die 1Spalte der ausgewählten Zeile geschrieben.+Ab Version 14.04 haben wir eine animierte Turtle für Programme mit JavaFX-Oberfläche. Sie unterstützte wie dir frühere Turtle ein kartesisches Koordinatensystem, das man auf der Zeichenfläche mit setOriginX/setOriginY platzieren kann.
  
-<code java+{{:de:playgroundturtle.png}} 
-  int i jTabelle.getSelectedRow();   + 
-  jTabelle.setValueAt("Anna"i0)+Seit Version 13.00 des Java-Editors hat sich die Turtle-Komponente geändert. Wir haben nun eine animierte Turtle-Komponente, die auf der Turtle von [[http://www.aplu.ch/home/apluhomex.jsp|Ägidius Plüss]] basiert. Die Playground- und Turtle-Komponete befinden sich auf der Utilities-Leiste. Man kann ein oder mehrere Turtles auf einem Playground platzieren. 
-</code>  + 
 +Zwecks didaktischer Reduktion und wegen technischer Gegenheiten reagiert die GUI nicht, solange die Turtle zeichnet. 
 + 
 +{{:de:turtle.png}} 
 + 
 +Vor Version 13.00 gab es eine viel einfachere Turtle. Wenn Sie ein existierendes Programm mit dieser alten Turtle verwenden wollen, so müssen Sie diese so importieren:  
 + 
 +<code>import je.util.Turtle;</code
 + 
 +Als didaktische Reduktion gibt es die //setOrigin(double x, double y)-Methode//, mit welcher in der Zeichenfläche ein aus dem Mathematikunterricht bekanntes Koordinatensystem eingerichtet werden kann. 
 + 
 +Beispiel: 
 +{{:de:turtlesetorigin.png}} 
 + 
 +Bei der neuen Turtle gehört die //setOrigin()-Methode// zur Playground-Klasse. 
 + 
 +\\ 
 +---- 
 + 
 +==== JMenuBar ==== 
 +{{:de:menubardemo.png}} 
 + 
 +Mit einer JMenuBar-Komponente kann man eine Menüleiste erstellen. Die Konfiguration erfolgt über die Menüs (JMenu-Komponenten), die in der Menüleiste angezeigt werden sollen. 
 + 
 +\\ 
 +---- 
 + 
 +==== JMenu ==== 
 +{{:de:jmenudemo.png}} 
 + 
 +Mit einer JMenu-Komponente erstellt man ein Menü für eine Menüleiste. Im Objekt-Inspektor gibt man beim Attribut //MenuBar// die gewünschte Menüleiste an, beim Attribut //MenuItems// trägt man die Menübefehle (z. B. NewOpenSave, Print, exitein und beim Attribut //Text// die Bezeichnung des Menüs (z. B. File) in der Menüleiste. 
 + 
 +Für jeden Menübefehl erzeugt der Java-Editor eine zugehörige Ereignismethode. 
 + 
 +\\ 
 +---- 
 + 
 +==== JPopupMenu ==== 
 +{{:de:jpopupmenudemo.png}}   
 + 
 +Mit einer JPopupMenu-Komponente erstellt man ein Popup-Menü. Im Beispiel reagiert die Canvas-Komponente mit gelbem Hintergrund auf den Rechtsklick und zeigt das Popup-Menü an. 
 + 
 +{{:de:jpopupmenudemo2.png}} 
 + 
 +Im Objekt-Inspektor gibt man beim Attribut //Listener// die GUI-Komponente an, die beim Rechtsklick das Popup-Menü anzeigen soll. Bei der Vorgabe //this// reagiert der Hintergrund des Anwendungsfensters auf einen Rechtsklick. Beim Attribut //MenuItems// trägt man die Menübefehle (z. B. Clear, Draw, Print) ein. Normalerweise wird das Attribut //Text// als Label eines Popup-Menüs nicht angezeigt. 
 + 
 +Für jeden Menübefehl erzeugt der Java-Editor eine zugehörige Ereignismethode. 
 + 
 +\\ 
 +----
  
 ==== Timer ==== ==== Timer ====
Zeile 237: Zeile 282:
 Beispiel: Beispiel:
  
-<code java> timer1.start();</code>+<code java>  timer1.start(); 
 +  ... tue etwas 
 +  timer1.stop(); 
 +</code> 
 + 
 +\\ 
 +---- 
 +==== JTable ==== 
 +{{:de:jtableicon.png}} Mit einer JTable-Komponente kann man Tabellen darstellen.  
 + 
 +Im Object-Inspector stellt man die gewünschte Anzahl von Spalten (ColCount) und Zeilen (RowCount) ein. Im Attribut //Columns// gibt man die Namen der Spalten ein. Setzt man //AutoCreateRowSorter// auf true, so kann man nach den Spaltennamen sortieren. 
 + 
 +Mit der Methode //setValueAt(Object aValue, int row, int column)// kann man einen Wert in die Zelle an der Position (row, column) setzen und mit //getValueAt(int row, int column)// lesen. getSelectedRow() liefert den Index der ersten ausgewählten Zeile. 
 + 
 +Beispiele: "Anna" wird in die 1. Spalte der ausgewählten Zeile geschrieben. 
 + 
 +<code java> 
 +  int i = jTabelle.getSelectedRow();   
 +  jTabelle.setValueAt("Anna", i, 0); 
 +</code>   
  
de/gui-verwendung.1420131996.txt.gz · Zuletzt geändert: 2015/01/01 19:06 (Externe Bearbeitung)