Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Sign in to follow this  
pedrix21

FileChooser + Imagem[Dúvida]

Recommended Posts

pedrix21

Boas pessoal,

O meu objectivo é colocar uma imagem numa jLabel.

Já consegui o path dá imagem com o seguinte código:

javax.swing.JFileChooser fc = new javax.swing.JFileChooser();
// Show the dialog, and add the aprove button text
        int ret = fc.showDialog(null, "Open file");
        if (ret == JFileChooser.APPROVE_OPTION) {
// Set the adress of csv file
            this.adress_file = fc.getSelectedFile().getAbsolutePath();

Já tenho o caminho, agora não sei como colocar a imagem na jLabel.

Obrigado, Pedro Lopes


@Pedro Lopes

Share this post


Link to post
Share on other sites
pedrix21

Como fazer isso? :S

Fiz isto:

ImageIcon image = null;
           image.setDescription(adress_file);
           lblImagemRede.setIcon(image);

Dá me erro...


@Pedro Lopes

Share this post


Link to post
Share on other sites
Knitter

Como fazer isso? :S

Fiz isto:

ImageIcon image = null;
           image.setDescription(adress_file);
           lblImagemRede.setIcon(image);

Dá me erro...

É natural que dê, se defines a variável como null não lhe podes invocar métodos :P .

ImageIcon image = new ImageIcon(adress_file);
lblImagemRede.setIcon(image);

Share this post


Link to post
Share on other sites
pedrix21

Obrigado, já consegui.

Tenho outro problema...

Quero ler o conteudo de um ficheiro .txt para colocar numa txtArea.

Extraí o caminho absoluto e mando para este método:

ublic String readerText(String adress_file) throws FileNotFoundException, IOException {

        FileReader fr = new FileReader(adress_file);
        BufferedReader br = new BufferedReader(fr);
        String s = "";
        while (br.readLine() != null) {
            s.concat(s + " ");
            System.out.println(s);
        }
        fr.close();
        return s;
    }

Dá me erro...

Podiam me explicar...


@Pedro Lopes

Share this post


Link to post
Share on other sites
Knitter

Sem saber qual é o erro não :P

O código que colocaste parece de teste, mas fica o reparo, não uses concatenações de Strings. Não foram feitas para isso, são imutáveis, implicam uma penalização de performance muito grande e há formas melhores de o fazer. Em vez da classe String usa StringBuilder ou se tiveres de usar um JRE antigo, StringBuffer.

O componente de texto de onde as JTextAreas descendem tem um bom método para ler dados de um ficheiro:

Reader leitor = new FileReader(adress_file);
JTextArea area = new JTextArea();
area.read(leitor, null);//O último parâmetro é um descritor, dependendo do código podes colocar aqui um File, um URL para o ficheiro, ou deixar a null.

Share this post


Link to post
Share on other sites
pedrix21

Obrigado :P

Já agora como criar um ficheiro .txt ?

Desculpa a maçada!

Para a próxima juro que vou ao java.sun xD


@Pedro Lopes

Share this post


Link to post
Share on other sites
Knitter

Criar um ficheiro depende do objectivo, ser .txt ou não é irrelevante para o Java, o que interessa é usar streams de escrita de caracteres.

Dá uma vista de olhos ao Java Tutorial, http://java.sun.com/docs/books/tutorial/reallybigindex.html, neste caso específico à secção de streams, http://java.sun.com/docs/books/tutorial/essential/io/charstreams.html e à secção seguinte de Buffered Streams.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.