Ir ao conteúdo
  • Cadastre-se

Erro ao pegar caminho de arquivo


Jonatan_7

Posts recomendados

Estava fazendo um programa para testar ícones e sons personalizados no JOptionPane. Eis o código:

import javax.swing.*;

public class Messages extends JOptionPane
{
public Messages()
{
UIManager.put("AuditoryCues.playList", UIManager.get("AuditoryCues.allAuditoryCues"));
UIManager.put("OptionPane.questionSound", "Files/chimes.wav");
UIManager.put("OptionPane.informationSound", "Files/Windows Error.wav");
UIManager.put("OptionPane.warningSound", "Files/Windows Exclamation.wav");
UIManager.put("OptionPane.errorSound", "Files/Windows Critical Stop.wav");
ImageIcon questionIcon = new ImageIcon("Files/Alert 04.ico");
ImageIcon informationIcon = new ImageIcon("Files/Alert 02.ico");
ImageIcon warningIcon = new ImageIcon("Files/Alert 33.ico");
ImageIcon errorIcon = new ImageIcon("Files/Alert 05.ico");
showMessageDialog(null, "Mensagem simples", "Messages", PLAIN_MESSAGE);
showMessageDialog(null, "Pergunta", "Messages", QUESTION_MESSAGE, questionIcon);
showMessageDialog(null, "Informação", "Messages", INFORMATION_MESSAGE, informationIcon);
showMessageDialog(null, "Aviso", "Messages", WARNING_MESSAGE, warningIcon);
showMessageDialog(null, "Erro", "Messages", ERROR_MESSAGE, errorIcon);
try
{
Thread.sleep(1000);
}
catch(InterruptedException ie) {}
Object strings[] = {"Sim", "Não"};
int i = showOptionDialog(null, "Você gosta de Java?", "Messages", YES_NO_OPTION, QUESTION_MESSAGE, questionIcon, strings, strings[0]);
if(i == YES_OPTION)
showMessageDialog(null, "Eu também te amo!!!", "Messages", INFORMATION_MESSAGE, new ImageIcon("Files/Smile.ico"));
else if(i == NO_OPTION)
showMessageDialog(null, "Você é muito mau!", "Messages", INFORMATION_MESSAGE, new ImageIcon("Files/Crying.ico"));
else if(i == CLOSED_OPTION)
showMessageDialog(null, "Agora fiquei curioso...", "Messages", INFORMATION_MESSAGE, new ImageIcon("Files/Huh.ico"));
}

public static void main(String args[])
{
new Messages();
}
}

Como se pode ver, eu chamo arquivos que estão na pasta Files. As mensagens aparecem normalmente, mas nenhum ícone aparece e nenhum som é reproduzido. A janela do DOS mostra o seguinte:

javax.swing.plaf.metal.MetalLookAndFeel/Files/Windows Error.wav not found.
javax.swing.plaf.metal.MetalLookAndFeel/Files/chimes.wav not found.
javax.swing.plaf.metal.MetalLookAndFeel/Files/Windows Error.wav not found.
javax.swing.plaf.metal.MetalLookAndFeel/Files/Windows Exclamation.wav not found.
javax.swing.plaf.metal.MetalLookAndFeel/Files/Windows Critical Stop.wav not found.
javax.swing.plaf.metal.MetalLookAndFeel/Files/chimes.wav not found.
javax.swing.plaf.metal.MetalLookAndFeel/Files/Windows Error.wav not found.

Preciso saber por que o Java pega inclui essa classe no nome do arquivo e como eu faço para pegar só o caminho que eu escolhi.

Se alguém quiser os sons e os ícones, pode baixá-los aqui:

http://cid-73a1537b867a43fa.skydrive.live.com/self.aspx/Documents/Messages.zip

Link para o comentário
Compartilhar em outros sites

Fiz como você pediu:


...
UIManager.put("AuditoryCues.playList", UIManager.get("AuditoryCues.allAuditoryCues"));
UIManager.put("OptionPane.questionSound", "D:\\Temp\\Testing Java\\Messages\\Files\\chimes.wav");
UIManager.put("OptionPane.informationSound", "D:\\Temp\\Testing Java\\Messages\\Files\\Windows Error.wav");
UIManager.put("OptionPane.warningSound", "D:\\Temp\\Testing Java\\Messages\\Files\\Windows Exclamation.wav");
UIManager.put("OptionPane.errorSound", "D:\\Temp\\Testing Java\\Messages\\Files\\Windows Critical Stop.wav");
ImageIcon questionIcon = new ImageIcon("D:\\Temp\\Testing Java\\Messages\\Files\\Alert 04.ico");
ImageIcon informationIcon = new ImageIcon("D:\\Temp\\Testing Java\\Messages\\Files\\Alert 02.ico");
ImageIcon warningIcon = new ImageIcon("D:\\Temp\\Testing Java\\Messages\\Files\\Alert 33.ico");
ImageIcon errorIcon = new ImageIcon("D:\\Temp\\Testing Java\\Messages\\Files\\Alert 05.ico");
showMessageDialog(null, "Mensagem simples", "Messages", PLAIN_MESSAGE);
...

Mas deu na mesma:


javax.swing.plaf.metal.MetalLookAndFeel/D:\Temp\Testing Java\Messages\Files\Windows Error.wav not found.
javax.swing.plaf.metal.MetalLookAndFeel/D:\Temp\Testing Java\Messages\Files\chimes.wav not found.
javax.swing.plaf.metal.MetalLookAndFeel/D:\Temp\Testing Java\Messages\Files\Windows Error.wav not found.
javax.swing.plaf.metal.MetalLookAndFeel/D:\Temp\Testing Java\Messages\Files\Windows Exclamation.wav not found.
javax.swing.plaf.metal.MetalLookAndFeel/D:\Temp\Testing Java\Messages\Files\Windows Critical Stop.wav not found.
javax.swing.plaf.metal.MetalLookAndFeel/D:\Temp\Testing Java\Messages\Files\chimes.wav not found.
javax.swing.plaf.metal.MetalLookAndFeel/D:\Temp\Testing Java\Messages\Files\Windows Error.wav not found.

Outra ideia?

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!