CATEGORII DOCUMENTE |
Pentru a trata evenimentele acestea trebuie folosita metoda handleEvent().In continuare avem identificatorii de evenimente relevanti si miscarile care declanseaza aceste evenimente.
Identificatorul evenimentului |
Semnificatia |
SCROLL_ABSOLUTE |
generat la deplasarea casetei barei de scroll |
SCROLL_LINE_DOWN |
generat la selectarea butonului din capatul de jos sau din stanga al barei de csroll |
SCROLL_LINE_UP |
generat la selectarea butonului din capatul de sus sau din dreapta al barei de csroll |
SCROLL_PAGE_DOWN |
generat la selectarea spatiului de sub sau din stanga casetei barei de scroll |
SCROLL_PAGE_UP |
generat la selectarea spatiului de deasupra sau din dreapta casetei barei de scroll |
Toate detaliile teoretice de pana acum s-ar putea sa para greu de inteles fara o exemplificare practica.Tocmai pentru a arata utilizarea diferitelor evenimente si tratarea lor vom prezenta un applet care va avea cinci butoane cu denumirea a cinci culori ; la executarea unui clic pe oricare buton fondul appletului se va modifica la culoarea inscrisa pe buton si va apare un text care ne va anunta culoarea pe care am selectat-o.
Intr-o prima etapa a construirii appletului nostru vom crea componentele si se va stabili modul lor de dispunere in fereastra.In exemplul nostru vom folosi un administrator de dispunere de tip FlowLayout pe care il vom aplica apoi containerului nostru.
Odata cu apasarea butoanelor noastre se vor genera evenimente de actiune.Pentru tratarea lor vom folosi metoda action() care in practica va realiza mai multe lucruri:
- testeaza daca initiatorul evenimentului este un buton
- afla care este butonul initiator
- schimba culoarea fondului
- apeleaza metoda paint() pentru aplicare in fapt a culorii noii pe ecran
Pentru a modulariza cat mai corect codul sursa vom crea o metoda action() care va apela in fapt o alta metoda schimbaCuloare() ; aceasta metoda primeste ca argument chiar obiectul buton care a initiat evenimentul.
Folosind faptul ca argumentul suplimentar al metodei action() este eticheta (in cazul butoanelor) putem afla care dintre butoane a fost apasat.In cazul de fata nu vom mai folosi solutia comparatiei etichetei butonului cu un anumit text.Obiectul transmis ca argument metodei schimbaCuloare() este o instanta a clasei Button iar una dintre variabilele de instanta este o referinta la acelasi obiect.In metoda noastra vom compara cele doua variabile pentru a testa daca este vorba de acelasi obiect, dupa care vom stabili culoarea de fond si apelam metoda repaint().
In continuare avem si listingul complet al aplicatiei comentate in randurile anterioare:
import java.awt.*;
public class CuloareFundal extends java.applet.Applet
public boolean action(Event evt, Object arg) else return false;
}
void schimbaCuloare(Button b)
else if (b==butonAlbastru)
else if (b==butonVerde)
else if (b==butonAlb)
else
repaint();
}
public void paint(Graphics ecran)
}
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 1088
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved