Parte 1: Applet
Parte 2:Eventi Parte I
L'ultima volta ci eravamo fermati ad analizzare la classe astratta inputevent che è la superclasse di eventi molto ricorrenti. Appunto MouseEvent-KeyEvent
MouseEvent
MouseEvent presenta molte costanti che rappresentano il tipo d'evento generato.
MOUSE_CLICKED : Click del mouse
MOUSE_MOVED : Movimento del mouse
MOUSE_PRESSED : Il tasto del mouse è stato premuto
MOUSE_RELEASED : il tasto del mouse è stato rilasciato
MOUSE_DRAGGRED : il mouse è stato trascinato
MOUSE_ENTERED : il mouse è entrato in un componente
MOUSE_EXITED : il mouse è uscito dal componente
MOUSE_WHEEL : è stata usata la "rotellina" del mouse
Il costruttore di MouseEvent è mostrato di seguito
orig rappresenta il componente che ha generato l'evento.
tipo : una delle costanti sopracitate
when : rappresenta il momento , l'ora in cui è avvenuto l'evento
modificatori : rappresenta uno dei modificatori di inputEvent.
x: coordinate x del puntatore
y: coordinate y del puntatore
click : numero di click effettuati
activePopup : indica se la pressione del mouse ha generato l'apertura di un menu o il cambiamento di stato di un'altro oggetto.
Spesso quando si gestisce l'evento del click del mouse oppure quando entra in un componente è utile sapere anche la posizione relativa alla finestra che può essere un applet o un Frame . Per ottenere le coordinate usare i seguenti metodi :
i primi due metodi sono di facile comprensione , restituiscono le coordinate x e y del puntatore, l'ultimo metodo invece restituisce un riferimento di tipo Point , il quale contiene a sua volta due membri interni : x e y, dal quale si può ottenere ugualmente la posizione del mouse. La classe point , come tutte le classi , deriva da Object quindi è possibili ridefinire in base alle proprie esigenze il metodo Tostring().
Un'altro metodo utile è getClickCount() che permette di contare il numero di click effettuati sul componente registrato presso il relativo gestore.La firma del metodo è mostrata di seguito
è presente anche un metodo per controllare se effettivamente è stata fatta iterazione con un menù o con qualche componente che cambi stato. Il seguente metodo si occupa di questo controllo
Tra gli altri metodi che voglio nominare ci sono i seguenti:
come spiegato in precedenza per i metodi getX()-getY()- getPoint() , anche quest'ultimi restituiscono la posizione del puntatore , ma in questo caso relativa allo schermo.
KeyEvent
KeyEvent è un evento generato quando si verifica un input da tastiera. Esistono 3 costanti che rappresentano il tipo evento:
KEY_PRESSED
KEY_RELEASED
KEY_TYPED
sono presenti anche altre costanti , che rappresentano i tasti naturalmente non sto quì a elencarle tutte.
Iniziamo a vedere il costruttore di KeyEvent.
orig=rappresenta il componente che ha generato l'evento
tipo=rappresenta il tipo di evento
quando=rappresenta l'ora in cui è avvenuta l'azione
modificatori=rappresenta uno dei modificatori di inputEvent.(Nel caso di keyevent i tasti premuti)
code=il codice del tasto
ch = il carattere digitato
Le funzioni più utilizzato sono mostrate di seguito
il primo metodo restituisce un valore intero , che rappresenta il tasto , il secondo metodo restituisce un carattere.
Se non è disponibile un codice o carattere valido restituisce VK_UNDEFINED, questo avviene solo nel caso in cui il tipo sia keytyped. Ma questa situazione l'analizzeremo quando vedremo i gestori eventi.
MouseWheelEvent
Evento generato quando si utilizza la rotella del mouse.Le due costanti rappresentano il tipo di scorrimento:
WHEEL_BLOCK_SCROOL : Scorrimento di una pagina in alto o in basso
WHEEL_UNIT_SCROOL : Scorrimento di riga in alto o in basso
Iniziamo vedendo il costruttore della classe MouseWheelEvent.
Orig rappresenta l'oggetto che ha generato l'evento
tipo indica il tipo di evento generato
quando l'ora in cui è avvenuto l'evento
modificatori indica uno delle costanti definite da inpuevent
x le coordinate x del puntatore del mouse
y le coordinate y del puntatore del mouse
attivapop indica se lo scrool ha cambiato lo stato di un componente
scorrCome indica una delle due costanti , che identifica il tipo di scorrimento
quant rappresenta il numero di scorrimento
contex n° rotazione della rotella
riguardo l'ultimo parametro c'è un metodo che viene usato molto spesso ed è
Restituisce il numero di rotazione della rotella , può essere sia negativo che positivo
è negativo quando la rotella si è mossa n volte in senso antiorario
è positivo quando la rotella si è mossa n volte in senso orario
TextEvent
Evento generato quando un utente immette caratteri all'interno di un campo di testo.Text Event definisce un unica costante TEXT_VALUE_CHANGED.
Ha un solo costruttore ed è il seguente:
obj rappresenta l'oggetto che ha generato l'evento
tipo rappresenta il tipo di evento ,appunto l'unica costante.
Questo evento verrà trattato in maniera approfondita quando analizzeremo i componenti come TextArea e TextField
WindowEvent
Evento generato da una finestra (o Frame) . Sono eventi non presenti in un applet , bensì in software per pc.
Iniziamo ad elencare le costanti ,che rappresentano , come in tutti gli altri eventi, anche il tipo di evento che descrive la classe stessa.
WINDOW_ACTIVED La finestra è attiva
WINDOW_CLOSED La finestra è chiusa
WINDOW_CLOSING L'utente ha richiesto la chiusura , successivamente genererà l'evento closed
WINDOW_DEACTIVED Finestra disattiva
WINDOW_DEICONIFIED Finestra ripristinata
WINDOW_GAINED_FOCUS : La finestra ha il focus
WINDOW_LOST_FOUCUS : La finestra ha perso il focus
WINDOW_ICONIFIED : La finestra è stata ridotta a icona
WINDOW_OPENED : La finestra è stata aperta
WINDOW_STATE_CHANGED : Lo stato della finestra è cambiato
La classe WindowEvent definisce numerosi costruttori ne elenco due.
obj rappresenta la finestra che ha generato l'evento
tipo una delle costanti sopracitate
altro rappresenta l'altro componente che ha ottenuto il focus , solo nel caso tipo sia uguale WINDOW_GAINED_FOCUS.
Utilizzeremo principalmente WindowEvent , con il suo relativo rilevatore quando utilizzeremo i Frame.
Per questa guida è tutto ci sentiamo alla prossima dove parleremo delle interfaccie di rilevatori eventi
Parte 2:Eventi Parte I
L'ultima volta ci eravamo fermati ad analizzare la classe astratta inputevent che è la superclasse di eventi molto ricorrenti. Appunto MouseEvent-KeyEvent
MouseEvent
MouseEvent presenta molte costanti che rappresentano il tipo d'evento generato.
MOUSE_CLICKED : Click del mouse
MOUSE_MOVED : Movimento del mouse
MOUSE_PRESSED : Il tasto del mouse è stato premuto
MOUSE_RELEASED : il tasto del mouse è stato rilasciato
MOUSE_DRAGGRED : il mouse è stato trascinato
MOUSE_ENTERED : il mouse è entrato in un componente
MOUSE_EXITED : il mouse è uscito dal componente
MOUSE_WHEEL : è stata usata la "rotellina" del mouse
Il costruttore di MouseEvent è mostrato di seguito
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
orig rappresenta il componente che ha generato l'evento.
tipo : una delle costanti sopracitate
when : rappresenta il momento , l'ora in cui è avvenuto l'evento
modificatori : rappresenta uno dei modificatori di inputEvent.
x: coordinate x del puntatore
y: coordinate y del puntatore
click : numero di click effettuati
activePopup : indica se la pressione del mouse ha generato l'apertura di un menu o il cambiamento di stato di un'altro oggetto.
Spesso quando si gestisce l'evento del click del mouse oppure quando entra in un componente è utile sapere anche la posizione relativa alla finestra che può essere un applet o un Frame . Per ottenere le coordinate usare i seguenti metodi :
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
i primi due metodi sono di facile comprensione , restituiscono le coordinate x e y del puntatore, l'ultimo metodo invece restituisce un riferimento di tipo Point , il quale contiene a sua volta due membri interni : x e y, dal quale si può ottenere ugualmente la posizione del mouse. La classe point , come tutte le classi , deriva da Object quindi è possibili ridefinire in base alle proprie esigenze il metodo Tostring().
Un'altro metodo utile è getClickCount() che permette di contare il numero di click effettuati sul componente registrato presso il relativo gestore.La firma del metodo è mostrata di seguito
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
è presente anche un metodo per controllare se effettivamente è stata fatta iterazione con un menù o con qualche componente che cambi stato. Il seguente metodo si occupa di questo controllo
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Tra gli altri metodi che voglio nominare ci sono i seguenti:
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
come spiegato in precedenza per i metodi getX()-getY()- getPoint() , anche quest'ultimi restituiscono la posizione del puntatore , ma in questo caso relativa allo schermo.
KeyEvent
KeyEvent è un evento generato quando si verifica un input da tastiera. Esistono 3 costanti che rappresentano il tipo evento:
KEY_PRESSED
KEY_RELEASED
KEY_TYPED
sono presenti anche altre costanti , che rappresentano i tasti naturalmente non sto quì a elencarle tutte.
Iniziamo a vedere il costruttore di KeyEvent.
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
orig=rappresenta il componente che ha generato l'evento
tipo=rappresenta il tipo di evento
quando=rappresenta l'ora in cui è avvenuta l'azione
modificatori=rappresenta uno dei modificatori di inputEvent.(Nel caso di keyevent i tasti premuti)
code=il codice del tasto
ch = il carattere digitato
Le funzioni più utilizzato sono mostrate di seguito
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
il primo metodo restituisce un valore intero , che rappresenta il tasto , il secondo metodo restituisce un carattere.
Se non è disponibile un codice o carattere valido restituisce VK_UNDEFINED, questo avviene solo nel caso in cui il tipo sia keytyped. Ma questa situazione l'analizzeremo quando vedremo i gestori eventi.
MouseWheelEvent
Evento generato quando si utilizza la rotella del mouse.Le due costanti rappresentano il tipo di scorrimento:
WHEEL_BLOCK_SCROOL : Scorrimento di una pagina in alto o in basso
WHEEL_UNIT_SCROOL : Scorrimento di riga in alto o in basso
Iniziamo vedendo il costruttore della classe MouseWheelEvent.
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
tipo indica il tipo di evento generato
quando l'ora in cui è avvenuto l'evento
modificatori indica uno delle costanti definite da inpuevent
x le coordinate x del puntatore del mouse
y le coordinate y del puntatore del mouse
attivapop indica se lo scrool ha cambiato lo stato di un componente
scorrCome indica una delle due costanti , che identifica il tipo di scorrimento
quant rappresenta il numero di scorrimento
contex n° rotazione della rotella
riguardo l'ultimo parametro c'è un metodo che viene usato molto spesso ed è
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
è negativo quando la rotella si è mossa n volte in senso antiorario
è positivo quando la rotella si è mossa n volte in senso orario
TextEvent
Evento generato quando un utente immette caratteri all'interno di un campo di testo.Text Event definisce un unica costante TEXT_VALUE_CHANGED.
Ha un solo costruttore ed è il seguente:
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
tipo rappresenta il tipo di evento ,appunto l'unica costante.
Questo evento verrà trattato in maniera approfondita quando analizzeremo i componenti come TextArea e TextField
WindowEvent
Evento generato da una finestra (o Frame) . Sono eventi non presenti in un applet , bensì in software per pc.
Iniziamo ad elencare le costanti ,che rappresentano , come in tutti gli altri eventi, anche il tipo di evento che descrive la classe stessa.
WINDOW_ACTIVED La finestra è attiva
WINDOW_CLOSED La finestra è chiusa
WINDOW_CLOSING L'utente ha richiesto la chiusura , successivamente genererà l'evento closed
WINDOW_DEACTIVED Finestra disattiva
WINDOW_DEICONIFIED Finestra ripristinata
WINDOW_GAINED_FOCUS : La finestra ha il focus
WINDOW_LOST_FOUCUS : La finestra ha perso il focus
WINDOW_ICONIFIED : La finestra è stata ridotta a icona
WINDOW_OPENED : La finestra è stata aperta
WINDOW_STATE_CHANGED : Lo stato della finestra è cambiato
La classe WindowEvent definisce numerosi costruttori ne elenco due.
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
obj rappresenta la finestra che ha generato l'evento
tipo una delle costanti sopracitate
altro rappresenta l'altro componente che ha ottenuto il focus , solo nel caso tipo sia uguale WINDOW_GAINED_FOCUS.
Utilizzeremo principalmente WindowEvent , con il suo relativo rilevatore quando utilizzeremo i Frame.
Per questa guida è tutto ci sentiamo alla prossima dove parleremo delle interfaccie di rilevatori eventi