Newsgroup: it.comp.java
Titolo: Visualizzare immagini con AWT

Salve a tutti,
ho un problemone enorme che mi assilla. Non riesco a visualizzare un
immagine all'interno di un applet.
Mi spiego meglio.
Sto realizzando un applet e avrei bisogno di aggiungere una toolbar grafica,
ovvero prendo delle immagini (gif o jpg) che rappresentano i miei pulsanti e
le metto tutte in alto alla finestra.
Allora il frame ha un BorderLayot, nel centro ci ho messo quello che occore.
Nella parte a nord volevo mettere questa pulsantiera.
La mia idea era di creare un nuovo panel, aggiungerci tutte le icone
(immagini) e piazzarlo a nord del frame.
Il primo problema e' come fare a caricare tutte le immagini nel panel. E
gia' qui sono bloccato.!!!
Secondo problema come fare per far si che quando un utente clicca su un
immagine venga eseguito qualche cosa. A questo problema penso che saprei
dare una risposta, ovvero potrei aggiungere un ActionListener per ogni
immagine.
MA COME FACCIO A CARICARE QUESTE ICONE... ehm ehm scusate, mi ero lasciato
prendere dalla disperazione.
Per ora ringrazio tutti coloro che mi potranno aiutare e scusate se la mia
domanda e' un po' stupida ma non e' da molto che programmo in java e sono
ancora un po' asino.
Un saluto a tutti fabrizio.
PS. Tenete conto che tutto cio' deve essere realizzato utilizzando solo le
librerie grafiche AWT.
brix...@freemail.itCANCELLATEQUESTOPEZZO

 immagini nel panel. E gia' qui sono bloccato.!!!
Devi "inserire" la tua immagine in un java.awt.Canvas, per fare questo
devi derivare una classe da Canvas e fare in modo che il metodo
paint() disegni l'immagine sulla sua superficie.
Naturalmente occorrono molte altre cose per farlo diventare un
pulsante.
Se vuoi, ti posso mandare un esempio funzionante. Inserirlo qui
porterebbe via troppo spazio.
--
Ciao. Leonardo 
bos...@uno.it
 
www.uno.it/utenti/tetractys

 brix...@freemail.itCANCELLATEQUESTOPEZZO
Non ti preoccupare il tuo problema è risolvbile:
Supponiamo che tu voglia visualizzare l'immagine "tuaimmagine.gif" contenuta
nella stessa Directory dell'applet; devi sapere che puoi visualizzare solo
immagini gif o jpg;
innanzitutto devi istanziare nell'applet un oggetto di tipo Image
Image tuaImmagine = null;
Tale oggetto fa parte della package java.awt.Image quindi se non l'hai gia fatto
devi importare tale packege con:  import java.awt.Image; prima della classe
applet.
Dopodichè nel costruttore dell'applet inizializzi il tuo oggetto Image con
tuaImmagine = getImage(this.getDocumentBase(),"tuaimmagine.gif");
dove this.getDocumentBase() restituisce la directrory dove è contenuto l'applet;
se la tua immagine è contenuta in un altra directory inserisci il path di questa
al posto di this.getDocumentBase().
Ora costruisci una classe ,diciamo panImmagine ,che estende la classe Panel e al
costruttore di questa passagli come parametro l'oggetto Image che ti sei
caricato.
In questa classe devi scrivere il metodo paint() .Questo è un metodo standard di
java che permette di disegnare sopra gli oggetti di tipo panel (....e non solo).
Scrivi quindi:
public void paint (Graphics g){
    g.drawImage(tuaimmagine,0,0,this);
}
Ora quando visualizzarai un oggetto di tipo panImmagine al suo interno sarà
visualizzata "tuaimmagine.gif"
Gli eventi sull'immagine saranno gli eventi sul tuo pannello; quindi gestendo
gli eventi di panImmagine gestirai gli eventi sulla tua immagine.
Spero di essere stato chiaro ed esauriente
Ciauzzz
Alian