8 Stimmen

Java MouseEvent in ActionEvent umwandeln

Ist es möglich, ein MouseEvent in ein ActionEvent zu konvertieren?

9voto

dacwe Punkte 42433

Nicht ohne einige Informationen zu verlieren. Die MouseEvent enthält Informationen über den Standort der Maus ( x, y ) und welche Tasten gedrückt werden (falls vorhanden).


Ich würde die Umwandlung folgendermaßen vornehmen:

MouseEvent me = ...;
ActionEvent ae = new ActionEvent(me.getSource(), me.getID(), me.paramString());

3voto

Andreas Dolk Punkte 110776

Sicher, das ist es, was ein Button tut (nach meinem Verständnis). Er verarbeitet eine MouseEvent und erstellt (sendet) eine ActionEvent .

Aktionsereignisse sind semantische Ereignisse - wie ein Signal, dass eine bestimmte Schaltfläche (Widget!) "gedrückt" wurde. Der Auslöser für dieses Aktionsereignis kann ein Mausereignis ("linke Taste wurde gedrückt und losgelassen, während sich der Mauszeiger in dem durch ein AWT-Schaltflächenwidget definierten Rechteck befand") oder ein Tastaturereignis ("Leertaste wurde gedrückt und losgelassen, während der Fokus auf dem AWT-Schaltflächenwidget lag") gewesen sein.

Ich vermute, dass es sich nicht um eine technische Umstellung handelt. Praktisch gesehen müssen Sie auf Mausereignisse hören und neue Aktionsereignisse an Ihre Aktions-Listener senden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X