Upozornenie
Toto je pôvodné prvé vydanie dokumentácie pre verziu knižnice grafického robota 1.0 beta. V súčasnosti už nie je aktuálne.
Novšie vydanie dokumentácie pre verziu 1.50 je publikované na nasledujúcej adrese:
http://cec.truni.sk/horvath/GRobot/
protected static class Robot.ObsluhaUdalostí extends Object
newObsluhaUdalostí() {@Overridepublicvoidtik() {}@Overridepublicvoidklik() {}@OverridepublicvoidvoľbaPoložkyPonuky() {}@Overridepublicvoidvymazanie() {}@Overridepublicvoidprekreslenie() {}@OverridepublicvoidpresunutieOkna() {}@OverridepublicvoidzmenaVeľkostiOkna() {}@Overridepublicvoidukončenie() {}@OverridepublicvoidpotvrdenieÚdajov() {}@OverridepublicvoidstlačenieTlačidlaMyši() {}@OverridepublicvoiduvoľnenieTlačidlaMyši() {}@OverridepublicvoidpohybMyši() {}@OverridepublicvoidťahanieMyšou() {}@OverridepublicvoidstlačenieKlávesu() {}@OverridepublicvoiduvoľnenieKlávesu() {}@OverridepublicvoidzadanieZnaku() {} };
Musíme presne dodržať syntax metód:
@Override public void «názov reakcie»() { … }, kde
«názov reakcie» je jeden z názvov vyššie uvedených reakcií.
Klauzula Override slúži na kontrolu. Keby sme ju neuviedli
a omylom urobili v názve metódy (reakcie) hoci nepatrný preklep,
obsluha danej udalosti by nefungovala (aplikácia by nereagovala). Medzi
zložené zátvorky sa {}, samozrejme, vpisuje kód, ktorý
bude spustený v prípade, že nastane (vznikne) príslušná udalosť (napr.
používateľ stlačí kláves, tlačidlo myši a podobne…).
Pre jeden svet je možné definovať len jednu inštanciu obsluhy udalostí. Ak sa ich pokúsite vytvoriť viacero, vznikne výnimka oznamujúca, že obsluha udalostí už bola definovaná.
Nasledovný príklad demonštruje vytvorenie obsluhy udalostí na klik myšou. Robotovi najskôr nastavuje rýchlosť, inak by sa nehýbal a potom je v obsluhe udalostí definované, aby sa pri kliknutí myšou na plátno rozbehol smerom na pozíciu, kam bolo kliknuté.
rýchlosť(10,false);newObsluhaUdalostí() {@Overridepublicvoidklik() {cieľNaMyš(); } };
| Modifier | Konštruktor a opis | 
|---|---|
| protected  | Robot.ObsluhaUdalostí() | 
| Modifikátor a typ | Metóda a opis | 
|---|---|
| void | dokreslenie()Spustená po prekreslení sveta. | 
| void | klik()Spustená pri kliknutí tlačidlom myši. | 
| void | pohybMysi() Alias pre pohybMyši. | 
| void | pohybMyši()Spustená pri pohybe myši nad plátnom podlahy. | 
| void | potvrdenieUdajov() Alias pre potvrdenieÚdajov. | 
| void | potvrdenieÚdajov()Spustená po stlačení klávesu  ENTERvo vstupnom riadku
zobrazenom po zavolaní metódyzačniVstup. | 
| void | potvrdenieVstupu() Alias pre potvrdenieÚdajov. | 
| void | prekreslenie()Spustená pri (pred) prekreslení sveta. | 
| void | presunutieOkna()Spustená pri presunutí okna sveta. | 
| void | stlacenieKlavesu() Alias pre stlačenieKlávesu. | 
| void | stlacenieTlacidlaMysi() Alias pre stlačenieTlačidlaMyši. | 
| void | stlačenieKlávesu()Spustená pri stlačení klávesu. | 
| void | stlačenieTlačidlaMyši()Spustená pri stlačení tlačidla myši. | 
| void | tahanieMysou() Alias pre ťahanieMyšou. | 
| void | ťahanieMyšou()Spustená pri pohybe myši nad plátnom podlahy počas držania tlačidla
myši. | 
| void | tik()Spustená v pravidelnom časovom intervale časovača, ktorý je možné
odštartovať metódou  spustiČasovača zastaviť metódouzastavČasovač. | 
| void | ukoncenie() Alias pre ukončenie. | 
| void | ukončenie()Spustená pri ukončení aplikácie. | 
| void | uvolnenieKlavesu() Alias pre uvoľnenieKlávesu. | 
| void | uvoľnenieKlávesu()Spustená pri uvoľnení klávesu. | 
| void | uvolnenieTlacidlaMysi() Alias pre uvoľnenieTlačidlaMyši. | 
| void | uvoľnenieTlačidlaMyši()Spustená pri uvoľnení tlačidla myši. | 
| void | volbaPolozkyPonuky() Alias pre voľbaPoložkyPonuky. | 
| void | voľbaPoložkyPonuky()Spustená pri zvolení položky ponuky. | 
| void | vymazanie()Spustená po vymazaní grafiky a textov sveta. | 
| void | zadanieZnaku()Spustená pri zadaní znaku z klávesnice. | 
| void | zmenaVelkostiOkna() Alias pre zmenaVeľkostiOkna. | 
| void | zmenaVeľkostiOkna()Spustená pri zmene veľkosti okna sveta. | 
| void | zrusenieUdajov() Alias pre zrušenieÚdajov. | 
| void | zrusenieVstupu() Alias pre zrušenieÚdajov. | 
| void | zrušenieÚdajov()Spustená po stlačení klávesu  ESCvo vstupnom riadku
zobrazenom po zavolaní metódyzačniVstup. | 
| void | zrušenieVstupu() Alias pre zrušenieÚdajov. | 
public void tik()
spustiČasovač a zastaviť metódou zastavČasovač. Informácie o poslednej udalosti časovača je možné
získať pomocou metódy údajeUdalostí.tik().
Časovač pre všetkých robotov automaticky spúšta metódu pracuj a časovač môže byť taktiež niektorými
metódami automaticky spustený. Pozri napríklad: rýchlosť, uhlováRýchlosť…
public void klik()
údajeUdalostí.myš() na
získanie podrobnejších údajov o tejto udalosti. Stav myši
je aktualizovaný aj vo vnútorných premenných sveta.public void voľbaPoložkyPonuky()
údajeUdalostí.položkaPonuky() alebo
svet.poslednáPoložkaPonuky()
 na získanie naposledy zvolenej položky ponuky alebo využite metódu
aktivovaná triedy PoložkaPonuky na overenie aktivácie konkrétnej
položky ponuky.public void volbaPolozkyPonuky()
 Alias pre
 Alias pre voľbaPoložkyPonuky.public void vymazanie()
Graphics2D, použite metódu podlaha.grafika() (resp. strop.grafika()) na prístup k nej. Majte na
pamäti, že grafika plátna pracuje s odlišným súradnicovým priestorom,
než to robia grafické roboty.public void prekreslenie()
Graphics2D, použite metódu podlaha.grafika() (resp. strop.grafika()) na prevzatie grafického objektu, pomocou ktorého
môžete tiež dokresľovať obsah plátien (v podstate rovnocenne ako pri
kreslení pomocou robota, avšak treba mať na pamäti, že grafika plátna
pracuje s odlišným súradnicovým priestorom, než to robia grafické
roboty).public void dokreslenie()
prekreslenie, ibaže je spustená po prekreslení
sveta, tesne pred finálnym zobrazením grafiky v okne (na obrazovke).
Takže v tomto momente je čas na posledné finálne úpravy obsahu, ktorý
bude reálne zobrazený na obrazovke. Čokoľvek sa v tomto momente
pokúsite nakresliť na plátno podlahy alebo
stropu, už nestihne byť zobrazené v tomto pracovnom cykle, avšak
môžete použiť grafický objekt sveta (získaný metódou svet.grafika()) na dokreslenie (krátkodobého)
grafického obsahu. Treba podotknúť že spomenutý objekt grafika pracuje v súradnicovom priestore Javy a všetko, čo pomocou
neho nakreslíte, bude na obrazovke zobrazené len do najbližšieho
prekreslenia.public void presunutieOkna()
údajeUdalostí.okno().public void zmenaVeľkostiOkna()
údajeUdalostí.okno(). (Po vykonaní tejto
metódy je v prípade, že sa pracovalo s výpismi textov na podlahu alebo strop,
spustené automatické prekreslenie. Ak je automatické prekreslenie
vypnuté, musí sa o prekreslenie sveta
pri zmene veľkosti okna postarať
programátor.)public void zmenaVelkostiOkna()
 Alias pre
 Alias pre zmenaVeľkostiOkna.public void ukončenie()
public void ukoncenie()
 Alias pre
 Alias pre ukončenie.public void potvrdenieÚdajov()
ENTER vo vstupnom riadku
zobrazenom po zavolaní metódy začniVstup.
Na získanie potvrdených údajov použite metódy
prevezmiReťazec,
prevezmiCeléČíslo alebo
prevezmiReálneČíslo. V prípade,
že potvrdené údaje nie sú v správnom tvare (platí pre celé alebo
reálne číslo), je príslušnou metódou „prevezmi“ vrátené
null.public void potvrdenieUdajov()
 Alias pre
 Alias pre potvrdenieÚdajov.public void potvrdenieVstupu()
 Alias pre
 Alias pre potvrdenieÚdajov.public void zrušenieÚdajov()
ESC vo vstupnom riadku
zobrazenom po zavolaní metódy začniVstup.
Reakciou na zrušenie vstupu môže byť napríklad ukončenie primitívnej priamočiarej aplikácie
vyžadujúcej na svouju činnosť potvrdenie vstupu.public void zrusenieUdajov()
 Alias pre
 Alias pre zrušenieÚdajov.public void zrušenieVstupu()
 Alias pre
 Alias pre zrušenieÚdajov.public void zrusenieVstupu()
 Alias pre
 Alias pre zrušenieÚdajov.public void stlačenieTlačidlaMyši()
údajeUdalostí.myš() na
získanie podrobnejších údajov o tejto udalosti. Stav myši
je aktualizovaný aj vo vnútorných premenných sveta.public void stlacenieTlacidlaMysi()
 Alias pre
 Alias pre stlačenieTlačidlaMyši.public void uvoľnenieTlačidlaMyši()
údajeUdalostí.myš() na
získanie podrobnejších údajov o tejto udalosti. Stav myši
je aktualizovaný aj vo vnútorných premenných sveta.public void uvolnenieTlacidlaMysi()
 Alias pre
 Alias pre uvoľnenieTlačidlaMyši.public void pohybMyši()
údajeUdalostí.myš() na
získanie podrobnejších údajov o tejto udalosti. Stav myši
je aktualizovaný aj vo vnútorných premenných sveta.public void pohybMysi()
 Alias pre
 Alias pre pohybMyši.public void ťahanieMyšou()
údajeUdalostí.myš()
na získanie podrobnejších údajov o tejto udalosti. Stav myši je
aktualizovaný aj vo vnútorných premenných sveta.public void tahanieMysou()
 Alias pre
 Alias pre ťahanieMyšou.public void stlačenieKlávesu()
údajeUdalostí.klávesnica()
na získanie podrobnejších údajov o tejto udalosti.
Užitočné sú aj ďalšie metódy triedy ÚdajeUdalostí uvedené v zozname nižšie.
Pre túto udalosť najmä kláves()
a kláves(int)public void stlacenieKlavesu()
 Alias pre
 Alias pre stlačenieKlávesu.public void uvoľnenieKlávesu()
údajeUdalostí.klávesnica()
na získanie podrobnejších údajov o tejto udalosti.
Užitočné sú aj ďalšie metódy triedy ÚdajeUdalostí uvedené v zozname nižšie.
Pre túto udalosť najmä kláves()
a kláves(int)public void uvolnenieKlavesu()
 Alias pre
 Alias pre uvoľnenieKlávesu.public void zadanieZnaku()
Shift, Ctrl, Cmd a podobne táto
udalosť nevzniká. Použite metódu
údajeUdalostí.klávesnica()
na získanie podrobnejších údajov o tejto udalosti.
Užitočné sú aj ďalšie metódy triedy ÚdajeUdalostí uvedené v zozname nižšie.
Pre túto udalosť najmä znak()
a znak(char)