Duvida - Como transformar uma imagem para o jLabel, sem usar macetes do Netbeans?

8 respostas
S

Oi gente,
Duvida - Como transformar uma imagem para o jLabel, sem usar macetes do Netbeans?

Minha dúvida é a seguinte, Eu tenho que pegar uma imagem em um local X , e colcoar em um Jlabel que esta em um jFrame!

Eu preciso conseguir mudar de imagem quando puder. As imagens poderão estar em JPEg eu acho.

Olhei o javadoc mas não entendi nada.Alguém pode me ajudar? Pelo menos indicar o que devo fazer ou que pesquisar ? Só uma luz plx

Valeu gente.

8 Respostas

V

ImageIcon imagem = new ImageIcon(file); suaLabel.setIcon(imagem);

Onde file é o File da imagem (que vocêp pode obter por um JFileChooser).

Se quiser mais flexibilidade que isso, use um ImagePanel:

S
ViniGodoy:
ImageIcon imagem = new ImageIcon(file);
suaLabel.setIcon(imagem);

Onde file é o File da imagem (que vocêp pode obter por um JFileChooser).

Se quiser mais flexibilidade que isso, use um ImagePanel:
https://github.com/MarkyVasconcelos/Towel/blob/master/src/com/towel/swing/img/JImagePanel.java

Valeu Viny, mas ainda tenho uma dúvida. Em javaFX , quando eu fiz algo parecido com isso, tive que fazer uns esquemas pra ele transformar a String em URI e depois em URL.
Aqui, eu nao queria usar o JFileChooser, ja queria jogar o caminho direto , por exemplo : "C:\foto.jpeg"

public static void setImageInLabel(String file)
{
     //pega a string e faz algo?
    
    //Seta a "file" como imageicon
        ImageIcon imagem = new ImageIcon(file);  
        jLabel_FotoAeronave.setIcon(imagem);  
}
Eu jogaria esse "C:\foto.jpeg" como parametro e o método faria o resto.

Como poderia fazer isso ?

Valeu pela resposta

V

Mas é JavaFX ou Swing?

Em Swing, bastaria fazer:

S

Java Swing.Ainda preciso de ajuda :? ...

Tentei com jFileChooser, passei pra URI, depois pra URL, depois pra STRING. até que funcionou, mas a iamgem nao é mostrada. Em compensação, nao da erro,
usei revalidate() tbm e nao foi.

Viny, fiz o que vc falou:

Exception in thread "main" java.lang.NullPointerException
at CadastrarAeronave.AeronavesNaTela.setImageInLabel(AeronavesNaTela.java:242)
at CadastrarAeronave.Aeronaves.main(Aeronaves.java:28)

Classe Main :

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package CadastrarAeronave;

import java.net.MalformedURLException;
import java.net.URI;
import java.net.URL;
import javax.print.DocFlavor;
import javax.print.*;

/**
 *
 * @author André
 */
public class Aeronaves {
    
    public static String pathToImage;
 

  
    public static void main(String args[]) 
    {
        
        //D:\flower.jpg
        AeronavesNaTela.main(args);
        AeronavesNaTela.setImageInLabel();
        
    }
    
    
}
Classe Da interface:
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package CadastrarAeronave;

import java.io.File;
import javax.swing.ImageIcon;

/**
 *
 * @author André
 */
public class AeronavesNaTela extends javax.swing.JFrame {

    /**
     * Creates new form AeronavesNaTela
     */
    public AeronavesNaTela() {
        initComponents();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        jLabel_FotoAeronave = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jScrollPane1 = new javax.swing.JScrollPane();
        jList1 = new javax.swing.JList();
        jTextField1 = new javax.swing.JTextField();
        jTextField2 = new javax.swing.JTextField();
        jScrollPane2 = new javax.swing.JScrollPane();
        jTextArea1 = new javax.swing.JTextArea();
        jTextField3 = new javax.swing.JTextField();
        jTextField4 = new javax.swing.JTextField();
        jTextField5 = new javax.swing.JTextField();
        jLabel1 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jLabel5 = new javax.swing.JLabel();
        jLabel6 = new javax.swing.JLabel();
        jMenuBar1 = new javax.swing.JMenuBar();
        jMenu1 = new javax.swing.JMenu();
        jMenu2 = new javax.swing.JMenu();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jLabel_FotoAeronave.setText("          Foto da Aeronave");

        jLabel2.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
        jLabel2.setText("Aeronaves");

        jList1.setModel(new javax.swing.AbstractListModel() {
            String[] strings = { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" };
            public int getSize() { return strings.length; }
            public Object getElementAt(int i) { return strings[i]; }
        });
        jScrollPane1.setViewportView(jList1);

        jTextField1.setText("jTextField1");

        jTextField2.setText("jTextField2");

        jTextArea1.setColumns(20);
        jTextArea1.setRows(5);
        jTextArea1.setText("Description Of Airplane");
        jScrollPane2.setViewportView(jTextArea1);

        jTextField3.setText("jTextField3");

        jTextField4.setText("jTextField4");

        jTextField5.setText("jTextField5");

        jLabel1.setText("jLabel1");

        jLabel3.setText("jLabel3");

        jLabel4.setText("jLabel4");

        jLabel5.setText("jLabel5");

        jLabel6.setText("jLabel6");

        jMenu1.setText("File");
        jMenuBar1.add(jMenu1);

        jMenu2.setText("Edit");
        jMenuBar1.add(jMenu2);

        setJMenuBar(jMenuBar1);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel_FotoAeronave, javax.swing.GroupLayout.PREFERRED_SIZE, 161, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 110, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jScrollPane2)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, 82, Short.MAX_VALUE)
                            .addComponent(jLabel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jLabel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jLabel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jLabel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addGap(18, 18, 18)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jTextField5, javax.swing.GroupLayout.PREFERRED_SIZE, 186, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(jTextField1, javax.swing.GroupLayout.DEFAULT_SIZE, 186, Short.MAX_VALUE)
                                    .addComponent(jTextField2)
                                    .addComponent(jTextField3))
                                .addComponent(jTextField4, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 186, javax.swing.GroupLayout.PREFERRED_SIZE)))))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addGroup(layout.createSequentialGroup()
                        .addGap(31, 31, 31)
                        .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(18, 18, 18)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(jScrollPane1)
                            .addComponent(jLabel_FotoAeronave, javax.swing.GroupLayout.DEFAULT_SIZE, 300, Short.MAX_VALUE)))
                    .addGroup(layout.createSequentialGroup()
                        .addGap(83, 83, 83)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel1))
                        .addGap(18, 18, 18)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel3))
                        .addGap(18, 18, 18)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jTextField3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel4))
                        .addGap(18, 18, 18)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jTextField4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel5))
                        .addGap(18, 18, 18)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jTextField5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel6))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 24, Short.MAX_VALUE)
                        .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addContainerGap(111, Short.MAX_VALUE))
        );

        pack();
    }// </editor-fold>                        

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(AeronavesNaTela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(AeronavesNaTela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(AeronavesNaTela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(AeronavesNaTela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new AeronavesNaTela().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify                     
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    public static javax.swing.JLabel jLabel_FotoAeronave;
    public static javax.swing.JList jList1;
    private javax.swing.JMenu jMenu1;
    private javax.swing.JMenu jMenu2;
    private javax.swing.JMenuBar jMenuBar1;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JScrollPane jScrollPane2;
    public static javax.swing.JTextArea jTextArea1;
    public static javax.swing.JTextField jTextField1;
    protected static javax.swing.JTextField jTextField2;
    public static javax.swing.JTextField jTextField3;
    public static javax.swing.JTextField jTextField4;
    public static javax.swing.JTextField jTextField5;
    // End of variables declaration                   

public static void setImageInLabel(String file)
{
    
    
    
        ImageIcon imagem = new ImageIcon(file);  
        jLabel_FotoAeronave.setIcon(imagem);  
}

public static void setImageInLabel()
{
//Tanto D:/Flower.jpg, quanto D:/flower.jpeg, ou flower apenas, nao funcionam.
    String file =  "D:/flower";
     ImageIcon imagem = new ImageIcon(file); 
       
        
    jLabel_FotoAeronave.setIcon(imagem);
}





}
V

Está faltando um pouco de conceito básico de OO aí.

Para começar, não declare coisas como "static". Se você fizer isso, elas pertencerão à classe AeronaveNaTela, não somente ao objeto da tela em si.

Veja:
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package CadastrarAeronave;

import javax.swing.ImageIcon;

/**
 *
 * @author André
 */
public class AeronavesNaTela extends javax.swing.JFrame {

    /**
     * Creates new form AeronavesNaTela
     */
    public AeronavesNaTela() {
        initComponents();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        jLabel_FotoAeronave = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jScrollPane1 = new javax.swing.JScrollPane();
        jList1 = new javax.swing.JList();
        jTextField1 = new javax.swing.JTextField();
        jTextField2 = new javax.swing.JTextField();
        jScrollPane2 = new javax.swing.JScrollPane();
        jTextArea1 = new javax.swing.JTextArea();
        jTextField3 = new javax.swing.JTextField();
        jTextField4 = new javax.swing.JTextField();
        jTextField5 = new javax.swing.JTextField();
        jLabel1 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jLabel5 = new javax.swing.JLabel();
        jLabel6 = new javax.swing.JLabel();
        jMenuBar1 = new javax.swing.JMenuBar();
        jMenu1 = new javax.swing.JMenu();
        jMenu2 = new javax.swing.JMenu();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jLabel_FotoAeronave.setText("          Foto da Aeronave");

        jLabel2.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
        jLabel2.setText("Aeronaves");

        jList1.setModel(new javax.swing.AbstractListModel() {
            String[] strings = { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" };
            public int getSize() { return strings.length; }
            public Object getElementAt(int i) { return strings[i]; }
        });
        jScrollPane1.setViewportView(jList1);

        jTextField1.setText("jTextField1");

        jTextField2.setText("jTextField2");

        jTextArea1.setColumns(20);
        jTextArea1.setRows(5);
        jTextArea1.setText("Description Of Airplane");
        jScrollPane2.setViewportView(jTextArea1);

        jTextField3.setText("jTextField3");

        jTextField4.setText("jTextField4");

        jTextField5.setText("jTextField5");

        jLabel1.setText("jLabel1");

        jLabel3.setText("jLabel3");

        jLabel4.setText("jLabel4");

        jLabel5.setText("jLabel5");

        jLabel6.setText("jLabel6");

        jMenu1.setText("File");
        jMenuBar1.add(jMenu1);

        jMenu2.setText("Edit");
        jMenuBar1.add(jMenu2);

        setJMenuBar(jMenuBar1);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel_FotoAeronave, javax.swing.GroupLayout.PREFERRED_SIZE, 161, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 110, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jScrollPane2)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, 82, Short.MAX_VALUE)
                            .addComponent(jLabel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jLabel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jLabel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jLabel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addGap(18, 18, 18)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jTextField5, javax.swing.GroupLayout.PREFERRED_SIZE, 186, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(jTextField1, javax.swing.GroupLayout.DEFAULT_SIZE, 186, Short.MAX_VALUE)
                                    .addComponent(jTextField2)
                                    .addComponent(jTextField3))
                                .addComponent(jTextField4, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 186, javax.swing.GroupLayout.PREFERRED_SIZE)))))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addGroup(layout.createSequentialGroup()
                        .addGap(31, 31, 31)
                        .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(18, 18, 18)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(jScrollPane1)
                            .addComponent(jLabel_FotoAeronave, javax.swing.GroupLayout.DEFAULT_SIZE, 300, Short.MAX_VALUE)))
                    .addGroup(layout.createSequentialGroup()
                        .addGap(83, 83, 83)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel1))
                        .addGap(18, 18, 18)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel3))
                        .addGap(18, 18, 18)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jTextField3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel4))
                        .addGap(18, 18, 18)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jTextField4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel5))
                        .addGap(18, 18, 18)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jTextField5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel6))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 24, Short.MAX_VALUE)
                        .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addContainerGap(111, Short.MAX_VALUE))
        );

        pack();
    }// </editor-fold>                        

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(AeronavesNaTela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(AeronavesNaTela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(AeronavesNaTela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(AeronavesNaTela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>
        final AeronavesNaTela tela = new AeronavesNaTela();
        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {            	
                tela.setVisible(true);
                tela.setImageInLabel();
            }
        });
    }
    // Variables declaration - do not modify                     
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    public javax.swing.JLabel jLabel_FotoAeronave;
    public javax.swing.JList jList1;
    private javax.swing.JMenu jMenu1;
    private javax.swing.JMenu jMenu2;
    private javax.swing.JMenuBar jMenuBar1;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JScrollPane jScrollPane2;
    public static javax.swing.JTextArea jTextArea1;
    public static javax.swing.JTextField jTextField1;
    protected javax.swing.JTextField jTextField2;
    public static javax.swing.JTextField jTextField3;
    public static javax.swing.JTextField jTextField4;
    public static javax.swing.JTextField jTextField5;
    // End of variables declaration                   

public void setImageInLabel(String file)
{
        ImageIcon imagem = new ImageIcon(file);  
        jLabel_FotoAeronave.setIcon(imagem);  
}

public void setImageInLabel()
{
	String file =  "C:/flower.jpg";
	ImageIcon imagem = new ImageIcon(file); 
    jLabel_FotoAeronave.setIcon(imagem);
}
}
S

Viny, obrigado pela ajuda de novo. mas nao deu certo.
Tentei do seu modo, coloquei tudo certinho. Copiei a classe da interface, coloquei na classe java, pq o lixo do netbeans n deixa copiar e etc..
Enfim, nao deu.

Fiz algumas modificações com SYSTEm.out pra saber se o método esta sendo chamado. E foi isso a resposta:

run: passo 0 passo 2 passo 3 passo 1 CONSTRUÍDO COM SUCESSO (tempo total: 5 segundos)

A imagem ainda nao é exibida.
depois disso, tentei passar a string pra uri, url e depois pra string de novo, pra ver se ia, mas nao foi.

Segue o Código novamente :
A classe main, permanece igual.ok?

/* 
* To change this template, choose Tools | Templates 
* and open the template in the editor. 
*/  
package CadastrarAeronave;  
  
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URL;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.ImageIcon;  
  
/** 
* 
* @author André 
*/  
public class AeronavesNaTela extends javax.swing.JFrame {  
  
    /** 
     * Creates new form AeronavesNaTela 
     */  
    public AeronavesNaTela() {  
        initComponents();  
    }  
  
    /** 
     * This method is called from within the constructor to initialize the form. 
     * WARNING: Do NOT modify this code. The content of this method is always 
     * regenerated by the Form Editor. 
     */  
    @SuppressWarnings("unchecked")  
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                            
    private void initComponents() {  
  
        jLabel_FotoAeronave = new javax.swing.JLabel();  
        jLabel2 = new javax.swing.JLabel();  
        jScrollPane1 = new javax.swing.JScrollPane();  
        jList1 = new javax.swing.JList();  
        jTextField1 = new javax.swing.JTextField();  
        jTextField2 = new javax.swing.JTextField();  
        jScrollPane2 = new javax.swing.JScrollPane();  
        jTextArea1 = new javax.swing.JTextArea();  
        jTextField3 = new javax.swing.JTextField();  
        jTextField4 = new javax.swing.JTextField();  
        jTextField5 = new javax.swing.JTextField();  
        jLabel1 = new javax.swing.JLabel();  
        jLabel3 = new javax.swing.JLabel();  
        jLabel4 = new javax.swing.JLabel();  
        jLabel5 = new javax.swing.JLabel();  
        jLabel6 = new javax.swing.JLabel();  
        jMenuBar1 = new javax.swing.JMenuBar();  
        jMenu1 = new javax.swing.JMenu();  
        jMenu2 = new javax.swing.JMenu();  
  
        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);  
  
        jLabel_FotoAeronave.setText("          Foto da Aeronave");  
  
        jLabel2.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N  
        jLabel2.setText("Aeronaves");  
  
        jList1.setModel(new javax.swing.AbstractListModel() {  
            String[] strings = { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" };  
            public int getSize() { return strings.length; }  
            public Object getElementAt(int i) { return strings[i]; }  
        });  
        jScrollPane1.setViewportView(jList1);  
  
        jTextField1.setText("jTextField1");  
  
        jTextField2.setText("jTextField2");  
  
        jTextArea1.setColumns(20);  
        jTextArea1.setRows(5);  
        jTextArea1.setText("Description Of Airplane");  
        jScrollPane2.setViewportView(jTextArea1);  
  
        jTextField3.setText("jTextField3");  
  
        jTextField4.setText("jTextField4");  
  
        jTextField5.setText("jTextField5");  
  
        jLabel1.setText("jLabel1");  
  
        jLabel3.setText("jLabel3");  
  
        jLabel4.setText("jLabel4");  
  
        jLabel5.setText("jLabel5");  
  
        jLabel6.setText("jLabel6");  
  
        jMenu1.setText("File");  
        jMenuBar1.add(jMenu1);  
  
        jMenu2.setText("Edit");  
        jMenuBar1.add(jMenu2);  
  
        setJMenuBar(jMenuBar1);  
  
        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());  
        getContentPane().setLayout(layout);  
        layout.setHorizontalGroup(  
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)  
            .addGroup(layout.createSequentialGroup()  
                .addContainerGap()  
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)  
                    .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE)  
                    .addComponent(jLabel_FotoAeronave, javax.swing.GroupLayout.PREFERRED_SIZE, 161, javax.swing.GroupLayout.PREFERRED_SIZE))  
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)  
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 110, javax.swing.GroupLayout.PREFERRED_SIZE)  
                .addGap(18, 18, 18)  
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)  
                    .addComponent(jScrollPane2)  
                    .addGroup(layout.createSequentialGroup()  
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)  
                            .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, 82, Short.MAX_VALUE)  
                            .addComponent(jLabel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)  
                            .addComponent(jLabel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)  
                            .addComponent(jLabel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)  
                            .addComponent(jLabel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))  
                        .addGap(18, 18, 18)  
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)  
                            .addComponent(jTextField5, javax.swing.GroupLayout.PREFERRED_SIZE, 186, javax.swing.GroupLayout.PREFERRED_SIZE)  
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)  
                                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)  
                                    .addComponent(jTextField1, javax.swing.GroupLayout.DEFAULT_SIZE, 186, Short.MAX_VALUE)  
                                    .addComponent(jTextField2)  
                                    .addComponent(jTextField3))  
                                .addComponent(jTextField4, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 186, javax.swing.GroupLayout.PREFERRED_SIZE)))))  
                .addContainerGap())  
        );  
        layout.setVerticalGroup(  
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)  
            .addGroup(layout.createSequentialGroup()  
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)  
                    .addGroup(layout.createSequentialGroup()  
                        .addGap(31, 31, 31)  
                        .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE)  
                        .addGap(18, 18, 18)  
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)  
                            .addComponent(jScrollPane1)  
                            .addComponent(jLabel_FotoAeronave, javax.swing.GroupLayout.DEFAULT_SIZE, 300, Short.MAX_VALUE)))  
                    .addGroup(layout.createSequentialGroup()  
                        .addGap(83, 83, 83)  
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)  
                            .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)  
                            .addComponent(jLabel1))  
                        .addGap(18, 18, 18)  
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)  
                            .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)  
                            .addComponent(jLabel3))  
                        .addGap(18, 18, 18)  
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)  
                            .addComponent(jTextField3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)  
                            .addComponent(jLabel4))  
                        .addGap(18, 18, 18)  
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)  
                            .addComponent(jTextField4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)  
                            .addComponent(jLabel5))  
                        .addGap(18, 18, 18)  
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)  
                            .addComponent(jTextField5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)  
                            .addComponent(jLabel6))  
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 24, Short.MAX_VALUE)  
                        .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))  
                .addContainerGap(111, Short.MAX_VALUE))  
        );  
  
        pack();  
    }// </editor-fold>                          
  
    /** 
     * @param args the command line arguments 
     */  
    public static void main(String args[]) { 
        System.out.println("passo 0");
        /* Set the Nimbus look and feel */  
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">  
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. 
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html  
         */  
        try {  
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {  
                if ("Nimbus".equals(info.getName())) {  
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());  
                    break;  
                }  
            }  
        } catch (ClassNotFoundException ex) {  
            java.util.logging.Logger.getLogger(AeronavesNaTela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);  
        } catch (InstantiationException ex) {  
            java.util.logging.Logger.getLogger(AeronavesNaTela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);  
        } catch (IllegalAccessException ex) {  
            java.util.logging.Logger.getLogger(AeronavesNaTela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);  
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {  
            java.util.logging.Logger.getLogger(AeronavesNaTela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);  
        }  
        //</editor-fold>  
        final AeronavesNaTela tela = new AeronavesNaTela();  
        /* Create and display the form */  
        java.awt.EventQueue.invokeLater(new Runnable() {  
            public void run() {               
                tela.setVisible(true);  
                tela.setImageInLabel(); 
                System.out.println("passo 1");
            }  
        });  
    }  
    // Variables declaration - do not modify                       
    private javax.swing.JLabel jLabel1;  
    private javax.swing.JLabel jLabel2;  
    private javax.swing.JLabel jLabel3;  
    private javax.swing.JLabel jLabel4;  
    private javax.swing.JLabel jLabel5;  
    private javax.swing.JLabel jLabel6;  
    public javax.swing.JLabel jLabel_FotoAeronave;  
    public javax.swing.JList jList1;  
    private javax.swing.JMenu jMenu1;  
    private javax.swing.JMenu jMenu2;  
    private javax.swing.JMenuBar jMenuBar1;  
    private javax.swing.JScrollPane jScrollPane1;  
    private javax.swing.JScrollPane jScrollPane2;  
    public static javax.swing.JTextArea jTextArea1;  
    public static javax.swing.JTextField jTextField1;  
    protected javax.swing.JTextField jTextField2;  
    public static javax.swing.JTextField jTextField3;  
    public static javax.swing.JTextField jTextField4;  
    public static javax.swing.JTextField jTextField5;  
    // End of variables declaration                     
 /* 
public void setImageInLabel(String file)  
{  
        ImageIcon imagem = new ImageIcon(file);    
        jLabel_FotoAeronave.setIcon(imagem);    
}  
  */
public void setImageInLabel() 
{  
    System.out.println("passo 2");
    String file =  "C://flower";  
      
        
    ImageIcon imagem = new ImageIcon(file);   
    jLabel_FotoAeronave.setIcon(imagem);  
    jLabel_FotoAeronave.revalidate();
    jLabel_FotoAeronave.validate();
    System.out.println("passo 3");
     
}  
}
S
<blockquote>public void setImageInLabel()

{

System.out.println(passo 2);

String file =  C:\foto.jpeg;
ImageIcon imagem = new ImageIcon(file);   
jLabel_FotoAeronave.setIcon(imagem);  
//jLabel_FotoAeronave.revalidate();
//jLabel_FotoAeronave.validate();
System.out.println("passo 3");

}
}

Modifiquei esse método várias vezes, mudei algumas coisas, mas nao adiantou.

S

Gente, alguem tem alguma idéia do que eu possa estar fazendo errado ?
Alguma Dica ?
Por favor, qualquer dica ja ajuda.

Criado 24 de junho de 2012
Ultima resposta 26 de jun. de 2012
Respostas 8
Participantes 2