Co za różnica? Kiedy używałbyś myszy słuchającej? lub słuchacza akcji? Proszę i dziękuję!Różnica między odbiornikiem myszy a odbiorcą akcji?
Odpowiedz
interfejs
Słuchacz ActionListener Doc do odbierania zdarzeń działania. Klasa, która jest zainteresowana przetwarzaniem zdarzenia akcji implementuje ten interfejs , a obiekt utworzony przy użyciu tej klasy jest rejestrowany za pomocą komponentu , przy użyciu metody komponentu komponentu. Po wystąpieniu zdarzenia akcji wywoływana jest metoda obiektu tego obiektu.
interfejs
Słuchacz MouseListener Doc do odbioru "ciekawe" zdarzenia myszy (prasa, wydania, click, Enter i zjazd) na komponent. (Aby śledzić ruchy myszy i mysz ciągnie, użyj
MouseMotionListener
.)
Od docs widać, że korzystanie z tych interfejsów jest zupełnie inna. Chociaż możesz używać MouseListener
tylko w połączeniu z elementami GUI, ActionListener
jest również używany, gdy nie ma gui, na przykład w połączeniu z timerem.
Pierwsza różnica polega na tym, że zdarzenie MouseEvent jest prawdziwym zdarzeniem systemowym, podczas gdy ActionEvent jest zsyntetyzowanym zdarzeniem ... Wywoływane jest przez zdarzenie systemowe.
MouseListener (i MouseMotionLister, MouseWheelListener) są użyteczne, gdy (a) jesteś zainteresowany szczegółami zdarzenia (czyli x/y kliknij spot) lub gdy składnik używasz nie obsługuje ActionListeners
Action
s są dobre, gdy masz zadanie, które można wykonać bez zewnętrznych szczegółów wydarzenia (np. wyjście z programu) i chcesz mieć dostęp do więcej niż jednego komponentu lub aby włączyć/uruchomić za pomocą klawiatury lub mysz
ActionListener służy do obsługi logicznego kliknięcia przycisku. Kliknięcie dzieje:
- gdy myszy jest naciśnięty następnie wydany na przycisku
- lub gdy używany jest skrót klawiaturowy tego przycisku,
- lub gdy przycisk jest aktywny i spacji jest wciśnięty,
- lub gdy przycisk jest domyślny przycisk i Enter jest wciśnięty,
- lub gdy przycisk za kliknięcie() wywoływana jest metoda programowo
A MouseListener obsługuje tylko zdarzenia myszy niskiego poziomu.