Tabla de Contenidos
Oletetaan esimerkiksi, että meillä on JButton (Javan painike, jolla käyttäjä voi käynnistää toiminnon). Jos käyttäjä napsauttaa JButtonia , painikkeen napsautustapahtuma käynnistyy , joka luodaan ja lähetetään vastaavalle tapahtuman kuuntelijalle ( tässä tapauksessa ActionListener). Asianmukainen kuuntelija on ottanut käyttöön koodin, joka määrittää tapahtuman tapahtuessa suoritettavan toiminnon.
Huomaa, että tapahtumalähde on liitettävä pariksi päivitetyn tapahtuman kuuntelijan kanssa, tai sen käynnistäminen ei johda mihinkään toimintoon.
Miten tapahtumat toimivat
Jotta tapahtumia voidaan käsitellä oikein Javassa, on tunnettava kaksi peruselementtiä: tapahtuman lähde ja kuuntelija.
Objektia, joka luodaan tapahtuman tapahtuessa, kutsutaan tapahtumalähteeksi . Kuuntelija puolestaan on kohde, joka on vastuussa tapahtumien vastaanottamisesta ja käsittelemisestä niiden tapahtuessa . On tärkeää huomata, että Java tarjoaa useita lähteitä.
Javalla on myös monenlaisia tapahtumia ja kuuntelijoita. Jokainen tapahtumatyyppi on määritetty suoraan tai sidottu tiettyyn kuuntelijaan. Esimerkiksi yleinen tapahtumatyyppi ovat toimintotapahtumat, joita edustaa ActionEvent Java -luokka ja jotka käynnistyvät, kun käyttäjä napsauttaa painiketta tai luettelon kohdetta.
Käyttäjän toimissa luodaan sitten ActionEvent-luokkaa vastaava objekti, joka puolestaan vastaa asiaankuuluvaa toimintoa. Tuolloin tämä objekti sisältää kaikki tapahtuman lähdetiedot ja käyttäjän suorittaman tietyn toiminnon. Tämä tapahtumaobjekti siirtyy sitten vastaavan ActionListenerin eli vastaavan kuuntelijan objektin menetelmään.
tyhjä toiminta
Kun tämä toimenpide suoritetaan, asianmukainen GUI-vastaus palautetaan. Se voi olla valintaikkunan avaaminen tai sulkeminen, digitaalisen allekirjoituksen tekeminen, tiedostojen lataaminen tai mikä tahansa monista muista toiminnoista, jotka ovat käyttäjän käytettävissä käyttöliittymässä.
Tapahtumatyypit
Tässä luetellaan ja selitetään joitain Javan yleisimmistä tapahtumatyypeistä:
- ActionEvent : Edustaa toimintoa, kun graafista elementtiä, kuten painiketta tai luettelokohdetta, napsautetaan. Aiheeseen liittyvä kuuntelija: ActionListener.
- ContainerEvent – Edustaa tapahtumaa, joka tapahtuu itse GUI-säilön sisällä, esimerkiksi jos käyttäjä lisää tai poistaa objektin käyttöliittymästä. Aiheeseen liittyvä kuuntelija: ContainerListener .
- KeyEvent – Edustaa tapahtumaa, jossa käyttäjä painaa, kirjoittaa tai vapauttaa näppäintä. Aiheeseen liittyvä kuuntelija: KeyListener .
- WindowEvent : edustaa mitä tahansa ikkunaan liittyvää tapahtumaa, esimerkiksi kun ikkuna suljetaan ja se otetaan käyttöön tai deaktivoidaan. Aiheeseen liittyvä kuuntelija: WindowListener .
- MouseEvent – Edustaa mitä tahansa hiireen liittyvää tapahtumaa, kuten napsautusta, kaksoisnapsautusta jne. Aiheeseen liittyvä kuuntelija: MouseListener .
On tärkeää huomata, että useat kuuntelijat ja tapahtumalähteet pystyvät olemaan vuorovaikutuksessa toistensa kanssa. Esimerkiksi yksi kuuntelija voi rekisteröidä useita tapahtumia, jos ne ovat samantyyppisiä. Tämä tarkoittaa, että samankaltaisten komponenttien joukossa, jotka suorittavat samantyyppisiä toimintoja, yksi tapahtumakuuntelija voi käsitellä ne kaikki. Vastaavasti yksi tapahtuma voidaan sitoa useaan kuuntelijaan, jos se sopii ohjelman suunnitteluun, vaikka tämä on paljon harvinaisempaa.
Viitteet
- Bell, B. (2003). JAVA opiskelijoille. Saatavilla osoitteessa: https://books.google.co.ve/books?id=TRUdyfwdaSoC&dq
- Harvey, M. (2003). Kuinka ohjelmoida Javalla. Saatavilla osoitteessa: https://books.google.co.ve/books?id=is2J44U4DpsC&dq