5
4.1. Dogadjaji Razlike izmedju obrade u proceduralnim programiranju i GUI. GUI zahteva pristup preko doga|aja. Doga|aji se registruju j jednom redu (queue) kao strukturi podataka i povezani su sa operativnim sistemom. (Red mo`e biti vezan za OS ili samo konkretnu aplikaciju.) Svaki doga|aj je primerak klase: java.awt.event.*. Razlikujemo: doga|aje ni`eg nivoa (odnose se na direktnu interakciju korisnika i ure|aja) To su potklase java.awt.event: KeyEvent, MouseEvent, WindowEvent, … doga|aje vi{eg nivoa (kombinacija 4. RAD SA APLETIMA

rad sa apletima-dogadjaji

Embed Size (px)

DESCRIPTION

dogadjaji-rad sa apletima u programskom jeziku JAVA

Citation preview

  • 4.1. DogadjajiRazlike izmedju obrade u proceduralnim programiranju i GUI.GUI zahteva pristup preko doga|aja.Doga|aji se registruju j jednom redu (queue) kao strukturi podataka i povezani su sa operativnim sistemom. (Red mo`e biti vezan za OS ili samo konkretnu aplikaciju.) Svaki doga|aj je primerak klase: java.awt.event.*.Razlikujemo: doga|aje ni`eg nivoa (odnose se na direktnu interakciju korisnika i ure|aja) To su potklase java.awt.event: KeyEvent, MouseEvent, WindowEvent, doga|aje vi{eg nivoa (kombinacija nekoliko doga|aja ni`eg nivo) To su potklase java.awt.event: ActionEvent, TextEvent, ItemEvent, ...4. RAD SA APLETIMA

  • Za rukovanje doga|ajima najva`niji si metodi koji su definisani u odgovaraju}im klasama. (Ovde }e biti opisano kori{}enje nekih od tih metoda.)Da bi se uspe{no rukovalo doga|ajima, oni moraju biti prime}eni (registrovani). Za te svrhe koriste se oslu{kiva~i doga|aja - specijalni objekti implementirani preko interfejsa java.util.EventListener. Svaki doga|aj ima odgovaruje|eg oslu{kiva~a.4.1.1. Rad sa mi{em u apletimaOvde je va`an metod: repaint(). On poziva metod update() koji bri{e prozor apleta, popunjava ga bojom pozadine i crta aktuelni sadr`aj.Metodi za rad sa mi{em: boolean mouseDown(Event dog, int x, int y) boolean mouseUp(Event dog, int x, int y)

  • Svaki od njih mo`e biti predefinisan. Na primer:public boolean mouseDown(Event dogadjaj, int x, int y){ System.out.println(Mis kliknut u +x+,+y); return true;}Kruzici.javaKruzici.htmlZa rad sa mi{em postoje i metodi:boolean mouseMove(Event d, int x, int y)boolean mouseDrag(Event d, int x, int y)boolean mouseEnter(Event d, int x, int y)bolean moseExit(Event d, int x, int y).Linije.javaLinije.html

  • 4.1.2. Rad sa tastaturom u apletimaMetodi za rad sa tastaturom:public boolean keyDown(Event dog, int dirka)public boolean keyUp(Event dog, int dirka)dirka - celobrojni argument i treba se kastovati u karakter.Svaki od njih mo`e biti predefinisan. Na primer:public boolean keyDown(Event dogadjaj, int dirka){ System.out.println(ASCII- vrednost: +dirka); System.out.println(Karakter je: +(char)dirka); return true;}

  • Za rad sa tastaturom postoje unapred definisani nazivi pojedinih dirki (tastera) :Event.HOME, Event.END, Event.PGUP, Event.PGDN,Event.UP, Event.DOWN, Event.LEFT i Event.RUGHT.Mo`e se pisati: if (dirka ==Event.DOWN) { . }Za testiranje da li je pritisnuta Modifajer-dirka u Event-klasi postoje 3 metoda:shiftDown(), metaDown() i controlDown().Dirke.java , Dirke.htmlIgra1.java , Igra1.html