Pessoal,
tenho um JFrame e gostaria de personalizar o ícone do mesmo.
Quando rodo a aplicação pelo Netbeans 6.9, o ícone é exibido como desejado.
Porém, ao rodar a aplicação fora do IDE, o ícone não é carregado.
public frmAdicionar(java.awt.Frame parent, boolean modal, CompeTableDAO dao, frmGerenciar control) {
super(parent, modal);
this.setIconImage(new ImageIcon("src/icones/add1.png").getImage()); // AQUI --> será problema na url ?
initComponents();
this.dao = dao;
this.control = control;
getRootPane().setDefaultButton(btAdicionar);
}
Alguém sabe ?
tenta passar a url do icone assim
System.getProperty("user.dir") + "/SuaPasta/SeuIcone.png"
o problema é a URL, pode ter certeza.
é chatinho mecher com essas coisas no java
sugiro que vc deixe seus icones fora do SRC apenas um conselho
para testar se o diretorio está correto joga dentro de um System.out
Use o método getResource para pegar a URL.
new ImageIcon(getClass().getResource("/icones/add1.png")).getImage()
[quote=rafaelviny]tenta passar a url do icone assim
System.getProperty("user.dir") + "/SuaPasta/SeuIcone.png"
o problema é a URL, pode ter certeza.
é chatinho mecher com essas coisas no java
sugiro que vc deixe seus icones fora do SRC apenas um conselho
para testar se o diretorio está correto joga dentro de um System.out[/quote]
Oi.
O código
public frmPrincipal(java.awt.Frame parent, boolean modal, CompeTableDAO dao, CompeTable compeTableResult) {
this.dao = dao;
this.setIconImage(new ImageIcon("e:\bbIcon.jpg").getImage());
initComponents();
txtEmp.addKeyListener((KeyListener) this);
getRootPane().setDefaultButton(btPesquisar);
String s = System.getProperty(("user.dir") + "e:\bbIcon.jpg");
System.out.print(s);
}
retorna o seguinte:
nullIcone erro:
null
Alguma ideia ?
faça assim
imprima o valor do System.getProperty("user.dir")
para vc ver até aonde será impresso o diretorio
se nao me engano é assim:
HD/seuProjeto/ caso esteja no C:, D: , etc
dai vc completa o caminho com o que falta
ex: pastaDentroDoProjeto/Icone.ico
o sistema não está encontrando o icone com o caminho que vc passou para ele
Realmente era a url.
Eu estava informando: [color=blue]src/icones/file.png[/color]
Eu só precisava informar a url completa: [color=blue]/app/src/icones/file.png[/color]
Agradeço pela atenção.