Come si caricano le immagini dinamicamente ? cerco di essere più chiaro.... allora nella pagina principale della mia applet chiedo all'utente di inserire l'url dell'immagine da caricare
Help Me
Thanks![]()
Come si caricano le immagini dinamicamente ? cerco di essere più chiaro.... allora nella pagina principale della mia applet chiedo all'utente di inserire l'url dell'immagine da caricare
Help Me
Thanks![]()
Dipende ... non c'è un unico modo.Originariamente inviato da Daikin
Come si caricano le immagini dinamicamente ? cerco di essere più chiaro.... allora nella pagina principale della mia applet chiedo all'utente di inserire l'url dell'immagine da caricare
1) Con la ImageIO (javax.imageio.ImageIO). Il caricamento è "sincrono", la immagine è modificabile perché ImageIO fornisce in lettura dei BufferedImage, supporta più formati di immagini, perché la architettura della ImageIO è a "plug-in" (e ci sono già svariati formati pluggati di default).
2) Con il Toolkit AWT (java.awt.Toolkit). Il caricamento è "asincrono", la immagine fornita è un Image, di norma è "read-only", supporta solo GIF/JPEG/PNG.
3) Con ImageIcon (javax.swing.ImageIcon), utile specialmente se va messo subito in un JButton/JLabel. Si basa sul Toolkit, quindi valgono le stesse cose dette in 2)
4) Se in una "applet", il getImage() di Applet. Cosa usi non lo so al momento ... dipende dalla implementazione del AppletContext. Comunque restituisce il generico Image, quindi è bene supporre che sia read-only, la documentazione dice che ritorna immediatamente, quindi è di certo "asincrono".
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Grazie
allora l'immagine che deve essere inserita nn deve subire modifiche , è solo un logo che deve essere inserito nel frame principale dell'applicazione
quale dei metodi citati in precedenza è più adatto e semplice x la mia situazione ?
thanks
sto provando con imageIcon... ma con scarsi risultati
ho risulto con il caricamento delle immagini
adesso ho 2 problemi :
1. come posso effettuare un controllo sulla dimensione dell'immagine inserita ? ( max 200x200 )
2. inoltre per l'esistenza di un file stavo usando exists , ma è utile fino ad un certo punto.... se ho capito bene controlla i percorsi , c'è un vero e proprio controllo su esistenza o meno di file ?
exists anke se è una directory mi da true....
Grazie
isFile() penso sia la soluzione migliore.... però come faccio a sapere se è un immagine ?
( .gif , .jpg ,... )
Image ha getWidth/getHeight. Nota che ricevono un ImageObserver (qui centra se il caricamento è asincrono o no, se hai dubbi chiedi).Originariamente inviato da Daikin
1. come posso effettuare un controllo sulla dimensione dell'immagine inserita ? ( max 200x200 )
BufferedImage ha gli stessi ma senza argomenti (perché se si ottiene un BufferedImage si può considerarlo già "completo").
isFile() e isDirectory(). Testano se esiste e è un file o directory.Originariamente inviato da Daikin
2. inoltre per l'esistenza di un file stavo usando exists , ma è utile fino ad un certo punto.... se ho capito bene controlla i percorsi , c'è un vero e proprio controllo su esistenza o meno di file ?
exists anke se è una directory mi da true....
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Grazie x tutti i suggerimenti
forse ho risolto così :
Image img = new ImageIcon("My.jpg").getImage();
int width = img.getWidth(null);
int height = img.getHeight(null);
mi ha restituito 200*200 faccio altri test....
che cosa intendi per caricamento asincrono o meno ?
come posso fare un controllo sull'estensione del file ? ad esempio se è .txt si deve rifiutare di aggiungere il file...
Come hai fatto il caricamento è "sincrono", terminato il costruttore di ImageIcon, la immagine è "completa".Originariamente inviato da Daikin
Image img = new ImageIcon("My.jpg").getImage();
int width = img.getWidth(null);
int height = img.getHeight(null);
mi ha restituito 200*200 faccio altri test....
che cosa intendi per caricamento asincrono o meno ?
La documentazione di ImageIcon infatti dice: "Images that are created from a URL, filename or byte array are preloaded using MediaTracker to monitor the loaded state of the image."
Originariamente inviato da Daikin
come posso fare un controllo sull'estensione del file ? ad esempio se è .txt si deve rifiutare di aggiungere il file...Questo è il modo più semplice. Se vuoi accettare gif/GIF/Gif ecc... basta portare prima nome in lower-case ( toLowerCase() ).codice:if (nome.endsWith(".gif") || nome.endsWith(".png")) { // ... ok ... }
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
grazieeeee![]()