=RESOLVIDO= JFileChooser tem dois botoes ...Como Faço um listener pro botao cancelar?

gente, dia!!!

Estou mexendo com o FileChooser e tenho dois problemões …

1º O FileChooser tem dois botoes mas o netbeans só me fala pra colocar 1 listener, que funciona para os dois.

2º O path que o FileChooser imprime é parecido com esse : file:/C:/Users/André/Documents/Enem%202012.htm ,
porém, preciso que venha nesse formato : C:\foto.jpeg

jLabel_FotoAeronave.setIcon(new javax.swing.ImageIcon(“C:\foto.jpg”));

[code] private void jFileIMGChooserActionPerformed(java.awt.event.ActionEvent evt) {

    try {
        File pathFile = jFileIMGChooser.getSelectedFile();
        URL toURL = pathFile.toURI().toURL();
        String path = toURL.toString();
        
        //Aeronaves.setPathToImage(path);
        System.out.println("Caminho: " + path);
        

    } catch (MalformedURLException ex) {
        Logger.getLogger(EscolhendoImagem.class.getName()).log(Level.SEVERE, null, ex);
    }
    
    
}     [/code]

Oi.

Por que você está sequer usando o listener do FileChooser? Ele é uma janela modal.

O path só aparece desse jeito pq vc mandou transforma-lo numa URL. Aliás, nem sei pra que você está fazendo isso, já que é totalmente desnecessário.

Seu código poderia ser simplesmente:

[code]
if (jFileIMGChooser.showOpenDialog(this) != JFileChooser.APPROVE_OPTION)
return;

File file = JFileChooser.getSelectedFile();
jLabel_FotoAeronave.setIcon(new ImageIcon(file));
System.out.println("Caminho: " + file.getAbsolutePath()); [/code]

Desculpa a demora pra responder.
Sim deu certo usando absolutePath. Mas agora preciso entender como fazer pra ele fazer uma ação diferente pra quando eu clicar em selecionar e cancelar.

quase laaaa

[quote=Andre Lopes]Desculpa a demora pra responder.
Sim deu certo usando absolutePath. Mas agora preciso entender como fazer pra ele fazer uma ação diferente pra quando eu clicar em selecionar e cancelar.

quase laaaa [/quote]

/**
     * Obtém arquivo desejado para salvar a mídia capturada
     * @return
     */
    public File getArquivoSalvo() {
        JFileChooser fileChooser = new JFileChooser();
        fileChooser.setFileSelectionMode( JFileChooser.FILES_ONLY );
        int resultado = fileChooser.showOpenDialog(this);

        if ( resultado == JFileChooser.CANCEL_OPTION )
            return O QUE VOCÊ QUISER QUANDO ELE CANCELAR A JANELA  :D 
        else
            return QUANDO ELE APROVAR A JANELA...
    }

Espero ter ajudado. Não se ligue no nome do meu método é só um exemplo, se ligue no código.

1 curtida

Você colocou o tópico como resolvido mas não colocou como conseguiu resolver seu problema. Coloque aqui para os que tiverem mesmo problema que o seu também conseguirem.

1 curtida