JToolBar

Criei um JToolBar com imagens num JInternalFrame. A principio as imagens apareceram normalmente. Algum tempo depois, as imagens nao apareciam mais. Nao mudei as imagens nem o programa de diretorio. Alguem sabe explicar?

Ola,

O programa não está achando as imagens. Tem certeza que nada mudou ? Da uma olhada no código onde vc carrega as imagens, certifique-se que o path existe.

[]'s

Não foi mudado nada mesmo, o codigo é esse abaixo, obrigado

barraFerramentas = new JToolBar();

novo = new JButton(new ImageIcon(“imagens/limpar.gif”));
novo.setToolTipText(“Novo”);
novo.setMaximumSize(new Dimension(30,30));

Oi, fjvalle!

Tenta colocar o caminho inteiro desde a raiz e ve se funciona, blz?
ex:c:\imagens\image.gif
Lembre-se, o caminho tem que ser especificado desde o c:.

Até, mais. :slight_smile:

Dessa maneira funciona, mas eu gostaria de manter o codigo o mais generico possivel, sem contar que ele estava funcionando e parou de repente. Obrigado!

fjvalle…vc pode usar o getPropertiers…

assim:


String strPath = System.getProperties("user.dir");

ImageIcon image = new ImageIcon(strPath+"\Icones\imagem.gif");

Dessa forma nao importa onde esteja a aplicação no esquema de hierarquia de pastas…desde que tudo esteja numa pasta raiz, por exemplo, a organização fica por sua conta…ou seja, o getProperties pega o caminho do diretório corrente…

espero ter ajudado…

ate mais…

Realmente funciona, obrigado. Porém ele funcionava anteriormente sem o uso getProperties.

fjvalle…cm certeza sem o getProperties funciona…mas acredito que usando ele é uma garantia a mais!! :lol:

Precisando estamos ai…

ate mais…

Durante a execução do seu programa, você não está alterando o “diretório atual” de alguma forma?? Isso explicaria porque ele deixa de encontrar as figuras…

E ao especificar o diretório, tome cuidado de não colocar as barras separadoras de diretório, pois no Windows é barra inversa, mas no Unix/Linux é barra normal!!!

Use a variável estática “separator” da classe File para saber qual é o caractere.