Boa tarde GUJ!
Estava eu seguindo o tutorial (daqui do site) de como Criar sua Splash Screen. Até então tudo bem, funcionou beleza!
Porém, só funciona se eu utilizo a referencia para a imagem de splash, com o diretório completo:
private String imgName = "/root/Desktop/SisCpadi academia/SisCpadi/Images/titulo.jpg";
quando tento substituir o método para pegar a imagem apatir do diretório da aplicação, não funciona para este caso (no entanto, ele retorna corretamente o ditório local). eis o método:
private String imgName = retornaProperty("ss");
/**
retornaProperty, busca em um arquivo .properties o diretório local do arquivo
*/
[code] //retorna property segundo a chave do arquivo properties, passada como parametro
public String retornaProperty(String key) {
InputStream is;
Properties prop = new Properties();
try {
// le o arquivo
is = Thread.currentThread().getClass().getResourceAsStream("/Configuracoes.properties");
prop.load(is);
} catch (FileNotFoundException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
}
return prop.getProperty(key);
}
public Properties getProperties(){
InputStream is;
Properties prop = new Properties();
try {
// le o arquivo
String arq = "/Configuracoes.properties";
is = Thread.currentThread().getClass().getResourceAsStream(arq);
System.out.println(Thread.currentThread());
prop.load(is);
} catch (FileNotFoundException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
}
return prop;
}[/code]
o arquivo de properties, está no caso, dentro do pacote padrão:
#properties
ss = /Images/titulo.jpg
Resumindo,
alguém sabe porque funciona somente em caso de por o diretório completo? (PS: a outra solução funciona perfeitamente em outras situações, como por ex: adicionar ícone a um internalframe)