Aparecer a imagem no arquivo jar

2 respostas
Glleydson

Ola estou fazendo um aplicacao simples so que nao consigo visualizar a imagem quando gero o arquivo jar.
alguem saber como que faz isso para que imagem posso aparecer ja tentei colocar a imagem dentro de uma pasta no src e gerar o jar …
mas nao obtive sucesso se alguem souber da um help ai

obrigado.

2 Respostas

doug

Ola

As imagens devem estar no src mesmo.
Dai você deve recuperar a imagem desta forma

Class clazz = this.getClass(); //Pode ser qualquer classe...
Image img = Image.createImage(clazz.getResourcesAsStream("/logo.jpg"));

Ps: Caminho do arquivo: src/logo.jpg

Espero ter ajudado
Flwsss

Glleydson

se poder me mostrar onde coloco esse comando eo ficarei muito grato.

package Formularios;

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.text.NumberFormat;


public class calculadora2 extends JFrame implements ActionListener,calculadora2_interface
{
    // DECLARA OS COMPONENTES
    JLabel lb_titulo;
    JLabel lb_autor;
    JLabel lb_logo;
    JLabel lb_numero1;
    JLabel lb_numero2;
    JLabel lb_resultado;
    JButton bt_soma;
    JButton bt_subtracao;
    JButton bt_multiplicacao;
    JButton bt_divisao;
    JButton bt_limpar;
    JButton bt_sair;
    JTextField tf_numero1;
    JTextField tf_numero2;
    JTextField tf_resultado;
    ImageIcon imagem_logo;
    JMenuBar barra_menu;
    JMenu menu_calculadora;
    JMenuItem mi_somar;
    JMenuItem mi_subtracao;
    JMenuItem mi_multiplicacao;
    JMenuItem mi_divisao;
    JMenuItem mi_limpar;
    JMenuItem mi_sair;
    double numero1 = 0;
    double numero2 = 0;
    double resultado = 0;
    NumberFormat calculo;
    calculadora2_heranca obj_calculos;

    //METODO CONSTRUTOR
    public calculadora2()
    {
        setTitle("Calculadora Básica");
        setSize(450,326);
        setResizable(false);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setVisible(true);
        //getContentPane().setBackground(Color.ORANGE);
        getContentPane().setLayout(null);// NAO IRA CONTER GERENCIADOR DE LAYOUT


           imagem_logo     = new ImageIcon("C:/Documents and Settings/Gleydson/Meus documentos/NetBeansProjects/Calculadora_Basica/src/Foto/Gleydson2.jpg");
          
           //INSTACIA OS COMPONENTES
           //JLabels
           lb_numero1     = new JLabel("Numero1");
           lb_numero2     = new JLabel("Numero2");
           lb_resultado   = new JLabel("Resultado");
           lb_autor       = new JLabel("Desenvolvido Por...: Gleydson Luiz Epifanio da Silva");
            lb_logo       = new JLabel(imagem_logo);


           // TextFields
           tf_numero1      = new JTextField("0",10);
           tf_numero2      = new JTextField("0",10);
           tf_resultado    = new JTextField("0",20);
           tf_resultado.setEditable(false);

           //FORMATACAO DO CAMPO DE SAIDA RESULTADO
           calculo = NumberFormat.getInstance();
           calculo.setMinimumFractionDigits(2);


           // JButtons
           bt_soma         = new JButton("+");
           bt_subtracao    = new JButton("-");
           bt_multiplicacao  = new JButton("*");
           bt_divisao      = new JButton("/");
           bt_limpar       = new JButton("Limpar");
           bt_sair         = new JButton("Sair");


           obj_calculos = new calculadora2_heranca();
           

                  //ADICIONA OS COMPONENTES
                  getContentPane().add(lb_numero1);
                  getContentPane().add(lb_numero2);
                  getContentPane().add(lb_resultado);
                  getContentPane().add(tf_numero1);
                  getContentPane().add(tf_numero2);
                  getContentPane().add(tf_resultado);
                  getContentPane().add(bt_soma);
                  getContentPane().add(bt_subtracao);
                  getContentPane().add(bt_multiplicacao);
                  getContentPane().add(bt_divisao);
                  getContentPane().add(bt_limpar);
                  getContentPane().add(bt_sair);
                  getContentPane().add(lb_logo);
                  getContentPane().add(lb_autor);


                     //MANIPULA OS COMPONENTES
                     lb_logo          .setBounds(-35,160,150,150);
                     lb_numero1       .setBounds(20,40,80,20);
                     lb_numero2       .setBounds(20,70,80,20);
                     lb_resultado     .setBounds(20,100,80,20);
                     tf_numero1       .setBounds(80,40,150,20);
                     tf_numero2       .setBounds(80,70,150,20);
                     tf_resultado     .setBounds(80,100,150,20);
                     bt_soma          .setBounds(270,30,50,40);
                     bt_subtracao     .setBounds(350,30,50,40);
                     bt_multiplicacao .setBounds(270,90,50,40);
                     bt_divisao       .setBounds(350,90,50,40);
                     bt_limpar        .setBounds(250,150,80,40);
                     bt_sair          .setBounds(340,150,80,40);
                     lb_autor         .setBounds(85,280,300,10);
                     lb_autor.setFont(new Font("Arial Norrow",Font.BOLD,10));

                       //COMPONENTES QUE IRAO SOFRER ACAO
                       bt_soma          .addActionListener(this);
                       bt_subtracao     .addActionListener(this);
                       bt_multiplicacao .addActionListener(this);
                       bt_divisao       .addActionListener(this);
                       bt_limpar        .addActionListener(this);
                       bt_sair          .addActionListener(this);

        }


    public void actionPerformed(ActionEvent acao)
    {
       if(acao.getSource() == bt_sair)
      {
          System.exit(0);
      }
      if(acao.getSource() == bt_limpar)
       {
          limpar();
       }
       else converter();

       if(acao.getSource() == bt_soma)
          tf_resultado.setText(""+calculo.format(obj_calculos.soma(numero1, numero2)));
       if(acao.getSource() == bt_subtracao)
         tf_resultado.setText(""+calculo.format(obj_calculos.subtracao(numero1, numero2)));
       if(acao.getSource() == bt_multiplicacao)
         tf_resultado.setText(""+calculo.format(obj_calculos.multiplicacao(numero1, numero2)));
       if(acao.getSource() == bt_divisao)
        tf_resultado.setText(""+calculo.format(obj_calculos.divisao(numero1, numero2)));
      }

           // METODO CONVERTER PARA QUE NAO HAJA REDUNDANCIA DE CODIGO.
           public void converter()
           {
               try
               {
                numero1 =Double.parseDouble(tf_numero1.getText());
                numero2 =Double.parseDouble(tf_numero2.getText());
               }
                catch(NumberFormatException erroNumber)
               {
                JOptionPane.showMessageDialog(null,"Digite um numero valor numerico valido"+erroNumber);
                JOptionPane.showMessageDialog(null,"O erro foi...: "+erroNumber.getMessage());
                limpar();
               }
           }
            public void limpar()
            {
                 tf_numero1.setText("");
                 tf_numero2.setText("");
                 tf_resultado.setText("");
                 tf_numero1.requestFocus();
            }

 public static void main(String args[])
 {
  JFrame obj_calc = new calculadora2();
  obj_calc.setVisible(true);
 }
}
Criado 12 de março de 2011
Ultima resposta 12 de mar. de 2011
Respostas 2
Participantes 2