V svetu JavaFX je interakcija z uporabnikom osrednji element za oživitev in dinamičnost aplikacij. Že si nastavil preprosto okno in gumb, vendar kaj se zgodi, ko uporabnik klikne ta gumb? V tem vodiču bo razloženo, kako v tvoji JavaFX aplikaciji implementirati obravnavalec dogodkov, da reagira na klik gumba. Cilj je konfigurirati gumb, da izvede določeno dejanje ob kliku.
Najpomembnejši vpogledi
- Učiš se, kako dodati obravnavalec dogodkov za obdelavo klikov dogodkov.
- Prikazano bo, kako prilagoditi postavitev gumba v svojem oknu.
- Učinkovitost z globalnimi spremenljivkami, da lahko upravljalne elemente uporabljaš v različnih metodah.
Navodila po korakih
Najprej želimo postaviti naš gumb bolj na sredino okna. Za to moraš prilagoditi kodo iz prejšnjega videa.
Zamenjaj funkcijo setBottom z setCenter, da gumb prikažeš centriran v postavitvi. Gumb se bo takoj pojavil na želeni poziciji.

Sedaj je gumb sicer centriran, vendar še ni funkcionalen. Želimo dodati funkcionalnost obravnavalca dogodkov. Zato implementiramo EventHandler, da gumbu dodelimo dejanje. To gre tako:
Najprej dodaš implements EventHandler

Po implementaciji bi moral preveriti, ali so bile dodane vse potrebne metode. Če tega še nisi storil, uporabimo funkcijo add unimplemented methods, da zagotovimo, da je vse pravilno vključeno.
Zdaj definiraš metodo handle. Tukaj se določi, kaj se zgodi, ko pritisneš gumb. Verjetno želiš ugotoviti, kateri gumb je bil pritisnjen, torej implementiraj poizvedbo, da identificiraš gumb.

Da bi imel globalno spremenljivko, ki shranjuje trenutni status tvoje aplikacije, lahko deklariraš int-spremenljivko po imenu i. Ta spremenljivka se povečuje vsakič, ko je gumb pritisnjen.

Zdaj uporabljamo metodo System.out.println(), da zabeležimo, kolikokrat je bil gumb pritisnjen. Pomembno je, da je izhod v konzolnem oknu viden.
Da zagotoviš, da gumb lahko reagira na klike, moraš uporabiti setOnAction(). Pri tem navedeš, da gumb uporablja obravnavalec dogodkov, ki si ga predhodno definiral.
Zaženi aplikacijo, in ko zdaj klikneš na gumb, bi se moralo odpreti konzolno okno in ti pokazati, kolikokrat si že kliknil. Vsakič, ko klikneš, se števec poveča.

To je osnovna implementacija obravnavalca dogodkov za gumb v JavaFX. Proces se lahko dodatno izpopolni in razširi z novimi funkcionalnostmi. Ta vrsta interakcije z uporabnikom bo igrala vlogo v mnogih aplikacijah.
Povzetek – Interakcija z uporabnikom z JavaFX – uporaba obravnavalcev dogodkov
V tem vodiču si se naučil, kako implementirati obravnavalca dogodkov v JavaFX in kako reagirati na interakcije uporabnikov. Videli ste, kako lahko gumb centrirate, globalno uporabljate in definirate klikate akcije. Koncepti, ki so bili obravnavani tukaj, se lahko uporabijo na mnoge različne GUI elemente.
Pogosta vprašanja
Kaj je obravnavalec dogodkov?Obravnavalec dogodkov je metoda, ki definira določeno dejanje, ki se izvede, ko pride do dogodka, kot je klik na gumb.
Kako centriram gumb v JavaFX?Z uporabo metode setCenter() za postavitev lahko gumb postavite na sredino okna.
Kako lahko preštejem število klikov na gumb?Uporabite lahko globalno spremenljivko, ki se ob vsakem kliku poveča za ena, in to izhod prikazujete v konzoli.