Ícones na Aplicação (Desktop) com o NetBeans 5.5

Olá a todos, tinha um sisteminha funcionando no NetBeans 5 com uns ícones adicionados em alguns botões… O Problema é o seguinte: coloquei a pasta com os ícones no Source (src) da Aplicação e adicionei o ícone no botão chamando direto no Classpath… funcionou perfeitamente, mas… hoje troqui para o NB 5.5 e quando fiz a mesma coisa deu erro… tive que chamar os ícones procurando na opção File e indicando todo o caminho, mesmo a pasta de ícones estando na minha aplicação, para poder funcionar… Alguém sabe como resolver essa bronca ??? pois senão não vou poder distribuir meu software !! 0 pra mim !!!

Deixa eu especificar mais o problema:

ANTES NO NB 5

CHAMADA: jButton1.setIcon(new ImageIcon("/src/icones/add_obj.gif"));

Ou seja só passava o caminho do Path…

AGORA COM O NB 5.5

CHAMADA: jButton1.setIcon(new ImageIcon(“C:\ProjetosNB\Agenda\src\icones\add_obj.gif”));

Desde já obrigado pela ajuda…

Abraços :wink:

Quando lidar com recursos na sua aplicação, não use os caminhos fixos.
Ponha os recursos em alguma pasta do classpath e use:

jButton1.setIcon(getClass().getResource("/icones/add_obj.gif"));

Fazendo isso, você poderá colocar as imagens dentro de um jar. :wink:

Valew cara mas não deu certo…

Onde devo colocar o meu Folder de Ícones ??? não é no src ?

Acredito que a solucao seja mais ou menos como o ViniGodoy disse, mas pode nao ter dado certo por causa do caminho da sua classe em relacao à pasta onde estao os ícones.
As vezes a gente acaba tendo que passar caminhos como “…/…/pasta1/pasta2” e nao só “/pasta1/pasta2” onde esse dois pontos servem pra voltar uma pasta.
Dá uma olhada nisso aí, e qualquer coisa posta como esta a estrutura do seu projeto (raiz do source, pasta de icones, e pacote da classe que voce esta executando).
Espero que funcione.

Do jeito que estava antes, ele estava usando um caminho relativo.
Deve ter alguma função para importar arquivos para o projeto. Você aponta e ele copia e cola dentro dele pra você.
Tem no Eclipse, no NetBeans não deve ser muito diferente.