Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [java]immagini con AWT

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    53

    [java]immagini con AWT

    salve ragazzi non riesco ad inserire un immagine all'interno di un Frame adoperando solo la libreria awt di java.Qualcuno sa darmi qlk diritta.Grazie

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Consiglio di non aggiungere l'immagine direttamente nel Frame, ma all'interno di un Panel da inserire nel Frame.

    E' sufficiente ridefinire il metodo paint() del Panel, costruendo quindi una nuova classe, che potremmo chiamare Immagine:
    codice:
    public class Immagine extends Panel {
       private Image img;
       public class Immagine(String percorso) {
          img = Toolkit.getDefaultToolkit().createImage( percorso );
       }
    
       public void paint(Graphics g) {
          g.drawImage(img, 0, 0, this);
       }
    }
    Per aggiugnere un'immagine al Frame, quindi:
    codice:
    public class TuoFrame extends Frame {
       private Immagine img;
       ...
       public TuoFrame() {
          ...
          img = new Immagine("/images/miaImmagine.gif");
          add( img );
       }
    }
    La domanda che sorge spontanea è: perchè utilizzi AWT e non Swing?


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [java]immagini con AWT

    Originariamente inviato da Rosario7
    salve ragazzi non riesco ad inserire un immagine all'interno di un Frame adoperando solo la libreria awt di java.Qualcuno sa darmi qlk diritta.Grazie
    Se vuoi disegnarla proprio nel frame, devi estendere Frame e fare l'override di paint(Graphics g) in cui appunto disegni la immagine usando i metodi di Graphics/Graphics2D.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    53
    purtroppo mi è stato chiesto di adoperare proprio awt e non swing.

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    53
    Lele scusa ho provato il tuo codice ma l'immagine non viene visualizzata, ho provato anche con l'istruzione panel.add(img),al posto di add(img),ma niente. ma te l'hai provato???
    Grazie

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da Rosario7
    Lele scusa ho provato il tuo codice ma l'immagine non viene visualizzata, ho provato anche con l'istruzione panel.add(img),al posto di add(img),ma niente. ma te l'hai provato???
    Grazie
    Più che provato l'ho utilizzato in più di un'occasione... solo che sono anni che non uso più AWT e forse manca qualche dettaglio, anche se ad occhio non mi pare...

    E' probabile che tu non setti la dimensione del pannello che visualizza l'immagine (non l'ho specificato perchè dolitamente lo fa il LayoutManager, quindi non mi sono preoccupato di questo.

    Prova con questa modifica:
    codice:
    public class TuoFrame extends Frame {
       private Immagine img;
       ...
       public TuoFrame() {
          setLayout( null );
          ...
          img = new Immagine("/images/miaImmagine.gif");
          img.setBounds(10, 10, 200, 200);   // Suppongo che l'immagine sia 200x200 pixel
          add( img );
    
          setSize(500, 500);   // Finestra di 500x500 pixel
       }
    }
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.