Java: Wie macht man Klassen, die MouseEvents und ActionEvents senden?

...komplette Frage anzeigen

1 Antwort

Willst Du eine Komponente haben, bei der sich Listener registrieren können? Dann musst Du nur von der passenden Basiskomponente ableiten und die entsprechenden add...Listener Methoden überschreiben. Dann kannst Du bei Bedarf bei allen angemeldeten Listenern die passende Methode aufrufen.

user2207 23.08.2012, 18:28

Ich meine, ohne extends zu verwenden.

0
pgoetz 23.08.2012, 20:12
@user2207

Das hast Du in der Frage nicht geschrieben, oder? Da Du scheinbar statt Vererbung lieber Komposition verwendest, muss Deine Klasse auch die add...Listener Methoden anbieten und sie an die enthaltene Instanz delegieren. Dann erledigt die Komponente den Rest und benachrichtigt die Listener.

0
user2207 24.08.2012, 06:32
@pgoetz

Also wenn die Klasse Comopnent erweitert, (nicht etwas Frame oder generell Window)bund eine addMouse/MouseMotion/ActionListener Methode hat, reagiert das Feld automatisch auf Interktionen?

Cool.

0
user2207 24.08.2012, 18:06
@user2207

AHHHHHHHH!

Method summary: Component.addMouseListener(MouseListener l)

*facepalm

0

Was möchtest Du wissen?