Ereignisse registrieren

Anfang  Zurück  Vor

Letzte Änderung 18.02.2014

 

Die meisten Funktionen einer grafischen Oberfläche werden erst dann ausgeführt, wenn ein bestimmtes Ereignis auf der Oberfläche ausgelöst wird, z.B. wenn ein Button mit der Maus angeklickt wird. Mit Hilfe eines Event-Handlers lassen sich bei jeder GUI-Komponente verschiedene Ereignisse registrieren. Um einen Event-Handler für eine GUI-Komponente zu erzeugen, müssen Sie die GUI-Komponente im GUI-Builder selektieren und das gewünschte Ereignis anschließend im Fenster Ereignisse anklicken, das Sie über das Menü Fenster aufrufen können.  Da die verschiedenen GUI-Komponenten z.T. unterschiedliche Eigenschaften besitzen, können sich auch die registrierbaren Events unterscheiden. Nach Auswahl eines Ereignisses wechselt XDEV 5 in die Code-Ansicht und generiert den entsprechenden Event-Handler automatisch für Sie, sodass Sie anschließend nur noch die Aktionslogik programmieren müssen.  Alternativ können Sie sämtliche Ereignisse auch über die Komponenten-Quickinfo registrieren.

 

 

 

Ereignisse bei GUI-Komponenten registrieren

 

Ereignisse über Fenster Ereignisse

clip0095

Ereignisse werden im Fenster Ereignisse registriert,  das Sie über das Menü Fenster aufrufen können.

 

Ereignisse über Quickinfo

clip0094

Ereignisse können auch über die Komponenten-Quickinfo registriert werden.

 

 

 

Ereignis registrieren

 

1.Klicken Sie eine Komponente im GUI-Builder an, bei der Sie ein Ereignis hinterlegen möchten.

2.Klicken Sie im Quickinfo darunter auf Ereignisse und wählen Sie im folgenden Menü das Ereignis aus, das Sie registrieren möchten, z.B. actionPerformed für Mausklick.

clip0094

3.Programmieren Sie anschließend im Code-Editor die Aktionslogik für das Ereignis.

@EventHandlerDelegate void button_actionPerformed(ActionEvent event) 
{
   // Aktionslogik für das Ereignis
}

 

 

 

Ereignis entfernen

 

Um bei einer GUI-Komponente ein existierendes Ereignis samt Code wieder zu entfernen, müssen Sie das entsprechende Ereignis über die Komponenten-Quickinfo oder im Fenster Ereignisse entfernen.

 

1.Klicken Sie eine Komponente im GUI-Builder an, bei der Sie ein Ereignis entfernen möchten.

2.Klicken Sie im Quickinfo darunter auf Ereignisse und klicken Sie bei dem zu entfernenden Ereignis auf fail.

clip0096

3.Speichern Sie abschließend die Änderung ab.

 

 

Gelöschte Events rückgängig machen

 

Mit der Funktion Rückgängig (Menü Bearbeiten > Rückgängig) können Sie sämtliche Aktionen in XDEV 5 rückgängig machen, auch das Löschen einer GUI-Komponente samt Event-Code. Das funktioniert jedoch nur solange man noch keine neuen Arbeitsschritte durchgeführt hat. Ansonsten muss man auch die neuen Arbeitsschritte rückgängig machen und anschließen ein zweites Mal durchführen.

 

Um dies zu vermeiden, bietet Ihnen XDEV 5 die Möglichkeit, sämtlichen Event-Code zu cachen. Damit bleiben die Events einer gelöschten GUI-Komponente, z.B. eines Buttons, vollständig erhalten. Wird zu einem späteren Zeitpunkt ein neuer Button verwendet, erhält dieser automatisch den zwischengespeicherten Event-Code, selbst wenn dazwischen neue Arbeitsschritte durchgeführt wurden.

 

Die Event-Code-Caching Funktion muss über Menü Bearbeiten > Einstellungen > Editoren > GUI-Builder bei Code der Event-Handler cachen aktiviert werden.

 

clip0285

 

 

 

Ereignisse

 

Aktion

actionPerformed - Das Ereignis wird bei einer Aktion ausgelöst, die je nach Komponente unterschiedlich sein kann, z.B. Button: Mausklick, TextField: Enter-Taste, ComboBox: Änderung der Auswahl usw. (siehe java.awt.event.ActionListener).

 

Drag'n'Drop

dragGestureRecognized - Es wird ein Drag-Ereignis registriert. Dies ist der Fall, wenn die Maus bei geklickter Maustaste bewegt wird (siehe java.awt.dnd.DragGestureListener).

drop - Es wird ein Drop-Ereignis registriert. Dies ist der Fall, wenn nach einem Drag-Ereignis die Maustaste losgelassen wird (siehe java.awt.dnd.DropTargetListener).

 

Eigenschaften

propertyChange - Das Ereignis wird ausgelöst, nachdem sich eine Eigenschaft der jeweiligen Komponente geändert hat, z.B. nach dem Aufruf einer set Methode (siehe java.beans.PropertyChangeListener).

vetoableChange - Das Ereignis wird ausgelöst, bevor sich eine Eigenschaft (Property) der jeweiligen Komponente ändert, z.B. nach dem Aufruf einer set Methode. Die Property ist constraint, d.h. es ist z.B. ein Wertebereich definiert. Der Listener kann dann per PropertyVetoException die Änderung abbrechen (siehe java.beans.VetoableChangeListener).

 

Fokus

focusGained - Das Ereignis wird ausgelöst, wenn die Komponente den Fokus erhält (siehe java.awt.event.FocusListener).

focusLost - Das Ereignis wird ausgelöst, wenn die Komponente den Fokus verliert, z.B. wenn eine andere Komponente angeklickt wird (siehe java.awt.event.FocusListener).

 

Hierarchie

hierarchyChanged - Das Ereignis wird ausgelöst, wenn sich die Hierarchie der Komponente (einer der Parents) ändert (siehe java.awt.event.HierarchyListener).

ancestorMoved - Das Ereignis wird ausgelöst, wenn sich eine Komponente in derselben Hierarchie (einer der Parents) bewegt (siehe java.awt.event.HierarchyBoundsListener).

ancestorResized - Das Ereignis wird ausgelöst, wenn sich eine Komponente in derselben Hierarchie (einer der Parents) ändert (siehe java.awt.event.HierarchyBoundsListener).

 

Initialisierung

init - Das Ereignis wird ausgelöst, wenn die Komponente initialisiert, d.h. wenn die Komponente im Speicher erzeugt wird. Aus Anwendersicht ist die gleichbedeutend mit dem Erscheinen der Komponente auf dem Bildschirm.

 

Komponente

componentShown - Das Ereignis wird ausgelöst, wenn die Komponente eingeblendet wird, nachdem sie ausgeblendet war (siehe java.awt.event.ComponentListener).

componentHidden - Das Ereignis wird ausgelöst, wenn die Komponente ausgeblendet wird (siehe java.awt.event.ComponentListener).

componentMoved - Das Ereignis wird ausgelöst, wenn sich die Position der Komponente ändert (siehe java.awt.event.ComponentListener).

componentResized - Das Ereignis wird ausgelöst, wenn sich die Größe der Komponente ändert (siehe java.awt.event.ComponentListener).

componentAdded - Das Ereignis wird ausgelöst, wenn eine Komponente in den Parent (Komponente auf der der Listener liegt) eingefügt wird (siehe java.awt.event.ContainerListener).

componentRemoved - Das Ereignis wird ausgelöst, wenn eine Komponente aus dem Parent (Komponente auf der der Listener liegt) entfernt wird (siehe java.awt.event.ContainerListener).

 

Maus

mouseClicked - Das Ereignis wird ausgelöst, wenn eine Maustaste geklickt wird. Hierbei muss eine Maustaste gedrückt und anschließend wieder losgelassen werden (siehe java.awt.event.MouseListener).

mouseEntered - Das Ereignis wird ausgelöst, wenn der Mauszeiger die Komponente berührt (siehe java.awt.event.MouseListener).

mouseExited - Das Ereignis wird ausgelöst, wenn der Mauszeiger die Komponente verlässt (siehe java.awt.event.MouseListener).

mousePressed - Das Ereignis wird ausgelöst, sobald eine Maustaste gedrückt wird (siehe java.awt.event.MouseListener).

mouseReleased - Das Ereignis wird ausgelöst, sobald eine vorher gedrückte Maustaste losgelassen wird (siehe java.awt.event.MouseListener).

mouseDragged - Das Ereignis wird ausgelöst, wenn die Maus mit gedrückter Maustaste bewegt wird (siehe java.awt.event.MouseMotionListener).

mouseMoved - Das Ereignis wird ausgelöst, wenn die Maus bewegt wird (siehe java.awt.event.MouseMotionListener).

mouseWheelMoved - Das Ereignis wird ausgelöst, wenn das Mausrad bewegt wird (siehe java.awt.event.MouseWheelListener).

 

Tastatur

keyActionPerformed - Das Ereignis wird ausgelöst, wenn eine Taste der Tastatur gedrückt wird (siehe xdev.ui.event.KeyActionAdapter).

enterActionPerformed - Das Ereignis wird ausgelöst, wenn die Enter Taste gedrückt wird (siehe xdev.ui.event.EnterActionAdapter).

escActionPerformed - Das Ereignis wird ausgelöst, wenn die Esc Taste gedrückt wird (siehe xdev.ui.event.EscapeActionAdapter).

keyTyped - Das Ereignis wird ausgelöst, nachdem eine Taste der Tastatur gedrückt und losgelassen wurde (siehe java.awt.event.KeyListener).

keyPressed - Das Ereignis wird ausgelöst, wenn eine Taste der Tastatur gedrückt wird (siehe java.awt.event.KeyListener).

keyReleased - Das Ereignis wird ausgelöst, nachdem eine vorher gedrückte Taste der Tastatur losgelassen wurde (siehe java.awt.event.KeyListener).

 

Auswahl

selectionChanged - Das Ereignis wird ausgelöst, wenn sich in der Komponente die Selektierung ändert.

 

Werteänderung

stateChanged - Das Ereignis wird bei einer Status- oder Wertänderung ausgelöst, z.B. bei XdevProgressBar, XdevSpinner.

itemStateChanged - Das Ereignis wird bei Anwahl oder Abwahl eines Eintrages in einer XdevList- oder ComboBox ausgelöst.

adjustmentValueChanged - Das Ereignis wird während oder am Ende einer Wertänderung ausgelöst.

 

Tree

treeWillCollapse - Das Ereignis wird ausgelöst, bevor ein Tree-Eintrag eingeklappt wird.

treeWillExpand - Das Ereignis wird ausgelöst, bevor ein Tree-Eintrag aufklappt wird.

treeCollapsed - Das Ereignis wird ausgelöst, nachdem ein Tree-Eintrag eingeklappt wurde.

treeExpanded - Das Ereignis wird ausgelöst, nachdem ein Tree-Eintrag aufklappt wurde.

 

InternalFrame

internalFrameActivated - Das Ereignis wird ausgelöst, nachdem das InternalFrame aktiviert (ausgewählt) wurde.

internalFrameClosed - Das Ereignis wird ausgelöst, nachdem das InternalFrame geschlossen wurde.

internalFrameClosing - Das Ereignis wird ausgelöst, bevor das InternalFrame geschlossen wird.

internalFrameDeactivated - Das Ereignis wird ausgelöst, nachdem das InternalFrame deaktiviert wurde.

internalFrameDeiconified - Das Ereignis wird ausgelöst, nachdem das InternalFrame nach einer Minimierung wiederhergestellt wurde.

internalFrameIconified - Das Ereignis wird ausgelöst, nachdem das InternalFrame minimiert wurde.

internalFrameOpened - Das Ereignis wird ausgelöst, nachdem das InternalFrame geöffnet wurde.

 

Fenster

windowActivated - Das Ereignis wird ausgelöst, nachdem das Fenster aktiviert (ausgewählt) wurde.

windowClosed - Das Ereignis wird ausgelöst, nachdem das Fenster geschlossen wurde.

windowClosing - Das Ereignis wird ausgelöst, bevor das Fenster geschlossen wird.

windowDeactivated - Das Ereignis wird ausgelöst, nachdem das Fenster deaktiv wurde.

windowDeiconified - Das Ereignis wird ausgelöst, nachdem das Fenster nach einer Minimierung wiederhergestellt wurde.

windowIconified - Das Ereignis wird ausgelöst, nachdem das Fenster minimiert wurde.

windowOpened - Das Ereignis wird ausgelöst, nachdem das Fenster geöffnet wurde.

 

Menü

menuCanceled - Das Ereignis wird ausgelöst, nachdem das Menü abgebrochen wurde.

menuDeselected - Das Ereignis wird bei Abwahl des Menüs ausgelöst.

menuSelected - Das Ereignis wird bei Anwahl des Menüs ausgelöst.

 

Hinweis: In bestimmten Situationen führen mehrere Ereignisse zum selben Ergebnis, sodass Sie sich für eine bestimmtes Ereignis entscheiden müssen.

 

 

 

Generierter Code

 

@EventHandlerDelegate void button_actionPerformed(ActionEvent event) 
{
   // Aktionslogik
}