Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [Java] L'immagine la carica ma non si vede nel frame

    Salve a tutti, ho questo problema, sto realizzando un'applicazione che mi serve per caricare dei prodotti sul sito dell'azienda per cui lavoro. Naturalente, ho bisogno di visualizzare le immagini di questi ultimi. Io ho il seguente codice:

    import java.util.Vector;
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.Component.*;
    import java.awt.Graphics.*;
    import java.awt.Graphics;
    import java.awt.Toolkit;
    import java.awt.Image.*;

    class Gestione {


    public static void main(String[] a) {


    Image myimg;
    Toolkit tk = Toolkit.getDefaultToolkit();

    try {
    myimg = tk.getImage("/media/hda1/work/fabio/tabelle/txt/immagini/"+"anello.jpg");
    Graphics g2;
    f.createImage(300,300);
    g2 = f.getGraphics();
    g2.drawImage(myimg, 0,0,Color.WHITE, f);
    // g2.drawArc(500,500,100,30,14,40);
    } catch (Exception e) {

    e.printStackTrace();
    System.out.println("ECCEZIONE!!!" + e.getMessage() + " " + e.getCause());

    }




    // f.repaint();


    }

    }

    Solo che l'immagine non viene visualizzata... anzi... lo fa per una frazione di millesimo di secondo, perché se implemento il codice in un ciclo while inifito questa viene visualizzata.... qualcuno ha idea di come mai?

    Grazie!

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Vuoi un semplice visualizzatore di immagine? (chiaramente altamente migliorabile ... è solo un esempio)
    codice:
    import javax.swing.*;
    
    public class ImageViewerFrame extends JFrame
    {
        private JScrollPane scrollPane;
        private JLabel imageLabel;
    
        public ImageViewerFrame (ImageIcon icon)
        {
            super ("Image Viewer");
    
            setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
            setSize (300, 300);
    
            imageLabel = new JLabel (icon);
    
            scrollPane = new JScrollPane (imageLabel,
                                JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
                                JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
    
            add (scrollPane);
        }
    
        public static void main (String[] args)
        {
            if (args.length == 1)
            {
                final ImageIcon icon = new ImageIcon (args[0]);
    
                SwingUtilities.invokeLater (new Runnable ()
                {
                    public void run ()
                    {
                        ImageViewerFrame f = new ImageViewerFrame (icon);
                        f.setVisible (true);
                    }
                });
            }
        }
    }
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    ti ringrazio, domattina al lavoro la provo... Il mio problema però, è che devo ridimensionarla nello schermo perché altrimenti mi occuperebbero tutto il frame. Le immagini le avevo visualizzate ma la codifica che ho fatto serviva appunto a ridimensionarle. Comunque, domani provo. Grazie per la risposta.

    Ciao.

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    41
    la butto là... non sono assolutamente esperta...

    prova a mettere nel frame un jPanel e farcomparire4 l'immagine nel panel. Non ti so dare una speigazione scientifica, ma per quanto riguarda il background se lo cambi nel jPanel dà gli stessi sintomi che hai descritto, mentre se aggiungi un panel e cambi lì il background tutto funzoina correttamente. Magari il problema è lo stesso.... ripeto che è buttata lì, ma magari funziona ;-)

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 © 2026 vBulletin Solutions, Inc. All rights reserved.