gr a fica e n on solo
• applicazioni da console
– com e gli esem pi finora realizzat i
• applicazioni grafiche
– st esso schem a delle applicazioni da console
( con m et odo main) , m a sfrut t ando classi che
producono grafica
– più avanzat e, t rat t at e succesivam ent e
• applet
– schem a nuovo
– " vivono" in un browser ( ut ilizzano l'am bient e di
run- t im e del browser)
Febbraio 2003
IGEA 02- 03
2
• lit t le applicat ion
– m a sono propost i alt ri significat i, com e
" applicat ion obj ect " o " program s t hat run on
panels"
• st rum ent i rapidi ed efficaci per gest ire la
grafica
– ...e non solo
• abbinat e a codice HTML
– vengono definit i apposit i riquadri ent ro i quali
avviene la visualizzazione
Febbraio 2003
IGEA 02- 03
3
• sogget t e a rest rizioni di sicurezza
( sandbox)
• i browser possono im pedire loro di
– lanciare alt re applicazioni
– accedere al file syst em locale
– accedere ad inform azioni sul sist em a su
cui sono in esecuzione
– com unicare liberam ent e via ret e
Febbraio 2003
IGEA 02- 03
4
client
client
(browser)
(browser)
carica pagina a.html
server
server
(http)
(http)
<html>
…
<applet code = "a.class"…>
</applet>
…
</html>
carica file a.class
JVM
a.html
a.class
Febbraio 2003
IGEA 02- 03
5
• TAG <applet>:
<applet code = "nom e_file_byt ecode"
width = "pixel_larghezza_riquadro"
height =
"pixel_alt ezza_riquadro">m essaggio
visualizzat o durant e
caricam ent o</applet>
• esem pio:
<applet code = "a.class"
width = "300"
height = "300">caricamento</applet>
Febbraio 2003
IGEA 02- 03
6
import java.applet.Applet;
public class <nome> extends Applet {
// metodi…
}
• la parola chiave extends fa sì che la
classe <nome> cont enga ( eredit i)
" aut om at icam ent e" t ut t i i m et odi e le
variabili ist anza della classe Applet
– anche se non sono esplicit am ent e definit i
Febbraio 2003
IGEA 02- 03
7
import java.awt.Graphics;
import java.applet.Applet;
public class Applet0 extends Applet {
public void paint(Graphics g) {
g.drawString("Welcome to Java!!",
50, 60 );
}
}
clic per provare
Febbraio 2003
IGEA 02- 03
8
• il browser, nell'at t ivare l'applet , esegue in
sequenza i m et odi
– costruttore, all'atto dell'istanziazione
– init, primo metodo attivato, svolge eventuali operazioni
di inizializzazione non specificate nel costruttore
– start, attivato subito dopo init, contiene istruzioni di
avvio
– paint, attivato dopo start, contiene le istruzioni per la
visualizzazione
• ogn i volt a ch e il ge st or e de lle fin e st r e de l
br ow se r r it ie n e ch e occor r a r idise gn a r e la
fin e st r a de ll'a pple t ch ia m e r à
( a u t om a t ica m e n t e ) il m e t odo paint
Febbraio 2003
IGEA 02- 03
9
• alt ri due m et odi
– stop
• eseguito quando l'applet viene arrestata (ad es.,
iconizzando la finestra)
– destroy
• eseguito subito prima che l'applet venga distrutta
• l'esat t o significat o dei m et odi si
com prende osservando at t ent am ent e il
com port am ent o dell'applet Prim aApplet
Febbraio 2003
IGEA 02- 03
10
• non è chiaro cosa inserire nel cost rut t ore e
cosa in init
– in ogni caso: inizializzazioni
• cosa è ut ile inserire in start e stop?
– dipende dall'im port anza dell'iconizzazione e del
successivo riprist ino della finest ra
• m ai chiam are paint
– spet t a al gest ore delle finest re, che lo fa
aut om at icam ent e
• buona part e delle " nost re" applet avranno
solo init e paint
Febbraio 2003
IGEA 02- 03
11
• Java, linguaggio originale
• i browser incorporano una m acchina
virt uale Java sost anzialm ent e st andard
• Java si evolve, dando luogo a Java 2
• i browser non si evolvono parallelam ent e,
rim anendo su Java
• i browser subiscono successivam ent e
evoluzioni " propriet arie" , fra loro non ben
com pat ibili
Febbraio 2003
IGEA 02- 03
12
• funzionam ent o st andard solo usando
Java
– m anca la part e m igliore del linguaggio!
• Net scape, Mozilla, Opera e Hot Java
at t ualm ent e si basano sulla JVM della
Sun e quindi su Java 2
• I nt ernet Explorer usa una JVM
Microsoft non com pat ibile con Java 2
Febbraio 2003
IGEA 02- 03
13
This document was created with Win2PDF available at http://www.daneprairie.com.
The unregistered version of Win2PDF is for evaluation or non-commercial use only.