VT-Events

Anfang  Zurück  Vor

Letzte Änderung 03.04.2013

 

Bei jeder Virtuellen Tabelle können Sie mit Hilfe eines Listeners spezielle Ereignisse registrieren, z.B. wenn sich in einer Virtuellen Tabelle etwas ändert. Um den Listener zu erzeugen, benötigen Sie zuerst eine neue Klasse, die das Interface VirtualTableListener implementiert. Anschließend können Sie der Virtuellen Tabelle den Listener per Methodenaufruf zuweisen.

 

Unterstützte Ereignisse:

DataChanged - Zeilen der Virtuellen Tabelle wurden hinzugefügt, überschrieben oder entfernt.

RowDeleted - Eine Zeile der Virtuellen Tabelle wurde entfernt.

RowInserted - Eine Zeile wurde der Virtuellen Tabelle hinzugefügt.

RowUpdated - Eine Zeile der Virtuellen Tabelle wurde editiert. Es genügt die Änderung eine einzelnen Wertes.

StructureChanged - Eine Spalte der Virtuellen Tabelle wurde hinzugefügt oder entfernt.

 

 

1.Legen Sie im Projektmanagement einen neuen Ordner Klassen und darin eine neue Klasse für den Listener an, z.B. MyVirtualTableListener.java.

package Klassen;
 
public class MyVirtualTableListener
{
   
}

 

2.Implementieren Sie das Interface VirtualTableListener.

package Klassen;
 
import xdev.vt.VirtualTableListener;
 
 
public class MyVirtualTableListener implements VirtualTableListener
{
   
}

 

Tipp: Wenn Sie den Namen des Interface VirtualTableListener mit Hilfe der Autovervollständigung eingeben, die Sie mit Strg + Leertaste aktivieren, wird der Import dafür automatisch generiert.

 

3.Implementieren Sie die Methoden des Interface. Bewegen Sie den Mauszeiger auf den Klassennamen MyVirtualTableListener und klicken Sie im erscheinenden Quick-Info auf Abstrakte Methoden implementieren.

clip0495

 

package Klassen;

 

import xdev.vt.VirtualTableEvent;

import xdev.vt.VirtualTableListener;

 

 

public class MyVirtualTableListener implements VirtualTableListener

{

         

 @Override

 public void virtualTableDataChanged(VirtualTableEvent event)

 {

         // TODO generated code

         

 }

 

 

 @Override

 public void virtualTableRowDeleted(VirtualTableEvent event)

 {

         // TODO generated code

         

 }

 

 

 @Override

 public void virtualTableRowInserted(VirtualTableEvent event)

 {

         // TODO generated code

         

 }

 

 

 @Override

 public void virtualTableRowUpdated(VirtualTableEvent event)

 {

         // TODO generated code

         

 }

 

 

 @Override

 public void virtualTableStructureChanged(VirtualTableEvent event)

 {

         // TODO generated code

         

 }

}

4.Überschreiben Sie bei den benötigten Methoden den Kommentar mit Code, der bei dem jeweiligen Ereignis ausgeführt werden soll.

@Override
public void virtualTableRowUpdated(VirtualTableEvent event)
{
   UIUtils.showMessage("Hinweis","Ein Wert hat sich geändert.");
}

5.Speichern Sie abschließend die Änderungen an der Klasse ab.

 

An welcher Stelle im Code die Zuweisung des Listeners erfolgt, ist situationsabhängig. Wird der Listener nur in einem bestimmten Fenster benötigt, könnte die Zuweisung zum Beispiel bei der Initialisierung des Fensters erfolgen (Ereignis init). Wird der Listener dagegen im gesamten Projekt benötigt, könnte die Zuweisung direkt in der entsprechenden VT-Klasse erfolgen.

 

6.Wählen Sie im Projektmanagement eine Virtuelle Tabelle an, der Sie den Listener zuweisen möchten, z.B. Fahrzeuge und klicken Sie im folgenden VT-Editor auf Code, um in die Code-Ansicht zu wechseln. Fügen Sie am Ende des generierten Codes den Methoden-Aufruf addVirtualTableListener ein, um der Virtuellen Tabelle Fahrzeuge den Listener MyVirtualTableListener zuzuwweisen.

// End generated code
{
   Fahrzeuge.VT.addVirtualTableListener(new MyVirtualTableListener());
}

 

 

Tipp: Alternativ zum Interface VirtualTableListener können Sie auch die Convenience-Klasse VirtualTableAdapter verwenden. Damit müssen Sie lediglich die Methoden implementieren, die Sie tatsächlich benötigen.