Event-y w SWING

Event-y: SWING

W poprzednim artykule na temat event-ów  opisałam działanie jednego ze wzorców projektowych. Kontynuując temat event-ów dalej w dzisiejszym artykule opiszę zasadę działania event-ów w Swing-u.

1. SWING.

Jest to jedna z bibliotek javy wykorzystywana do tworzenia graficznego interfejsu użytkownika GUI. Dzięki niej aplikacja jest wysoce interaktywna i elastyczna co do swoich funkcji. Przykładową aplikacją napisana w Javie przy użyciu Swing-a jest dobrze znany InteliJ IDEA. W wersji community możemy sprawdzić w kodzie źródłowym  poniższy fragment:

swing w Intelij IDEA
Swing w InteliJ community

2. Event i Swing jak to działa?

Mechanizm działania Swing-a poza event-ami opiera się również na action listeners, które pochodzą z biblioteki AWT. Warto tutaj zaznaczyć, iż Swing jest nowszą, ulepszoną wersją  AWT. Ponadto mam tutaj zastosowanie również mechanizm event handling, który zarządza danym eventem i decyduje, co powinno się wydarzyć, gdy określony event wystąpi. Dla przykładu, aby to lepiej zobrazować przedstawiam przykładowy kod źródłowy:

KeyEvent: key press code.
KeyEvent: key press code. Resource: Devwords

Powyższy kod wywołuje event, gdy określony numer klawisza na klawiaturze zostanie naciśnięty. W aplikacji ustawiłam numery odpowiednio dla strzałek w górę: 38, w lewo: 37, w prawo: 39, w dół: 40. Dodatkowo wypisałam te wartości na terminalu, aby można było zobaczyć wizualnie jak to działa. Poniżej możemy zobaczyć efekt na konsoli po przesuwaniu strzałkami rakiety.

Efekt eventu keyPress
Efekt eventu keyPress. Resource: Devwords

W innej małej aplikacji zaimplementowałam proste eventy wywoływane odpowiednio kliknięciem myszki. I tak np. ActionEvent dysponuje event-ami, takimi jak:

Efekt eventu keyPress.
Efekt eventu ActionEvent po kliknięciu myszki na pole „Click me”. Resource: Devwords.

Efekt poniżej:

Efekt eventu keyPress
Efekt eventu keyPress. Resource: Devwords

3.Podsumowanie.

W dzisiejszym artykule zobaczyliśmy podstawowe działanie event-ów w Swing-u. Aplikacje okienkowe z wykorzystaniem tej biblioteki są bardzo intuicyjne dla użytkownika. Tak jak wcześniej wspomniałam InteliJ IDEA (aplikacja bardzo popularna dla programistów Java i nie tylko) wyposażona jest w mnóstwo udogodnień wspomagających współczesne programowanie. I choć biblioteka ta może nie jest tak popularna jak framework-i dla frontend-u, to jednak warto wiedzieć, w jaki sposób działają event-y w Swing-u. Będzie to pomocne przy zrozumieniu działania event-ów w bardziej zaawansowanych tematach.

Leave a Comment

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *