Prezados amigos,
Estou desenvolvendo uma aplicação onde utilizo recursos como textos, áudios, imagens e vídeos, todos padronizados para utilização dentro do sistema (textos e áudios informativos, imagens em botões, pequenos clipes de vídeo para demonstrações).
Pretendo criar um JAR da aplicação para distribuição, e a estrutura de diretórios está conforme abaixo:
C:\
+- aplicacao
+--- ajuda
| +--- htm
| +--- JavaHelpSearch
+--- audio
+--- cursos
| +--- 0001
| +--- 0002
| +--- 0003
| +--- ....
| +--- ....
| +--- ....
+--- imagens
+--- jmfsample
+--- lib
+--- textos
+--- videos
+--- temp
Encontrei informações na Internet sobre o uso de getClass().getResource() para recuperar algum recurso a ser disponibilizado para a aplicação, conforme o trecho abaixo, que funcionou 100% para imagens nos botões de uma barra de ferramentas:
imageIcon = new ImageIcon(getClass().getResource("/imagens/ins_top_txt_fin_32.png"));
button = new JButton(imageIcon);
Mas não estou conseguindo o resultado desejado para capturar o nome de arquivos de áudio (.wav) e passar para um método em outra classe, responsável por reproduzir o respectivo arquivo de áudio.
Da forma conforme está codificado abaixo, funciona:
public Aplicacao()
{
super();
sap = new SimpleAudioPlayer();
sap.play(".//audio//abertura3.wav");
criarFormulario();
this.setVisible(true);
}
Porém gostaria de utilizar getClass().getResource(), conforme codificado abaixo, mas não funciona:
private URL recurso = null;
private String arqAudio = null;
public Aplicacao()
{
super();
sap = new SimpleAudioPlayer();
recurso = getClass().getResource("/audio/abertura3.wav");
arqAudio = recurso.toString();
sap.play(arqAudio);
criarFormulario();
this.setVisible(true);
}
Gostaria que mesmo pudesse ser feito para os arquivos de texto e para os vídeos. Mas por enquanto, estou quebrando a cabeça com o áudio…!!!
Alguém aqui no fórum poderia dar uma ajuda?
Agradecendo antecipadamente a atenção,
Augusto Cesar