Como mostrar mais de dois dados?

11 respostas
R

Assim galera, tenho um Frame com dois TextArea, onde no TextArea1 eu tenho alguns nomes, um por linha, então no segundo textArea ele fica limpo, e quando eu selecionar a frase no TextArea1 e clicar no botão adicionar, no TextArea2 vai aparecer as frases que eu selecionei. o código que coloquei no botão é este:

private void Adicionar_DisciplinasActionPerformed(java.awt.event.ActionEvent evt) {                                                      
        // TODO add your handling code here:
         Disciplinas_Escolhidas.setText(Disciplina_Cadastrada.getSelectedText());
         
    }

Mas ele só mostra um no TextArea, se eu selecionar por exemplo: programação, no TextArea2 irá aparecer programação, até aí tudo bem, mas quando eu clico em, programação2, apaga o nome programação do TextArea2 e fica apenas o proramação2. Quero que fique no TextArea2 todas as frases selecionadas.
Vlw!Obrigado!

11 Respostas

fernandosavio

Oi rayner
Quando você usa JTextArea.setText(String) ele apaga o que tem dentro e substitui pela nova String…
Mas se você usar o método JTextArea.append(String) ele concatena a nova String no final do antigo conteúdo do JTextArea…
Entendeu?

R

fernandosavio:
Oi rayner
Quando você usa JTextArea.setText(String) ele apaga o que tem dentro e substitui pela nova String…
Mas se você usar o método JTextArea.append(String) ele concatena a nova String no final do antigo conteúdo do JTextArea…
Entendeu?

Entendi sim, blz, deu certo, só que ele continua na mesma linha, gostaria que a cada frase selecionada pulasse uma linha. Pode ajudar aí? vlw! Obrigado! ah ei, o código eu o deixei assim:

private void Adicionar_DisciplinasActionPerformed(java.awt.event.ActionEvent evt) {                                                      
        // TODO add your handling code here:
         
          Disciplinas_Escolhidas.append(Disciplina_Cadastrada.getSelectedText());
         
    }

Fica realmentre assim, o código?
vlw! Obrigado!

samirrolemberg

você pode pegar o texto numa string auxiliar, colocar um \n no começo do texto antigo e adicionar o texto novo após o \n.

public void add(String novoTexto){ String aux = jTextArea.getText()+"\n"; jTextArea.setText(aux+novoTexto); }

ou

public void add(String novoTexto){ jTextArea.setText(jTextArea.getText()+"\n"+novoTexto); }

fernandosavio
private void Adicionar_DisciplinasActionPerformed(java.awt.event.ActionEvent evt) {                                                        
        Disciplinas_Escolhidas.append(Disciplina_Cadastrada.getSelectedText()+"\n");
}

É só concatenar o caracter de nova linha no fim…

R

fernandosavio:
private void Adicionar_DisciplinasActionPerformed(java.awt.event.ActionEvent evt) { Disciplinas_Escolhidas.append(Disciplina_Cadastrada.getSelectedText()+"\n"); }
É só concatenar o caracter de nova linha no fim…

Ei cara, vlw, vlw mesmo deu certo. Agora se não for incomodar muito, responde-me esta: para selecionar e presciso da dois clique, tem como fazer para da só um clique? Vlw! Obrigado!

fernandosavio

Aí já não acho que seja JTextArea o que você procura… e sim JList…
Aqui tem uma página com vários exemplos…
E aqui tem um exemplo ainda mais completo com o que você quer fazer…

R

fernandosavio:
Aí já não acho que seja JTextArea o que você procura… e sim JList…
Aqui tem uma página com vários exemplos…
E aqui tem um exemplo ainda mais completo com o que você quer fazer…

Ei e sendo em uma jList, como fica este código:

Disciplinas_Escolhidas.append(Disciplina_Cadastrada.getSelectedText()+"\n");

Aí estou utlizando como TextArea e em jList? Por que desta forma deu erro.

method getSelectedValue in class javax.swing.JList<E> cannot be applied to given types;
  required: no arguments
  found: java.lang.String
  reason: actual and formal argument lists differ in length
----
(Alt-Enter mostra dicas)

Tentei ver o links, mas o meu navegador não abriu.

fernandosavio

Cara… os links que te mandei tem vários exemplos… Tenta abrir eles de novo…

R

Ei, blz! Vlw ! Mas eu decidi fazer pelo TextArea Mesmo, mas to com outra dúvida aqui, quando eu clicar no botão remover, como eu coloco para que ele seje removido? VLw! Obrigado!

fernandosavio

O JList trabalho com items, entao você pede remover determinado item se quiser…
Já o TextArea trabalha com texto, entao para remover um item dele é a mesma coisa que remover um item de uma string do tipo: “item 1\nitem 2\nitem 3\nitem 4”…
Tu poderia usar o método split da classe String para quebrar a string e mostrar de novo se a linha que voce quer remover…

R

fernandosavio:
O JList trabalho com items, entao você pede remover determinado item se quiser…
Já o TextArea trabalha com texto, entao para remover um item dele é a mesma coisa que remover um item de uma string do tipo: “item 1\nitem 2\nitem 3\nitem 4”…
Tu poderia usar o método split da classe String para quebrar a string e mostrar de novo se a linha que voce quer remover…

Ei blz, eu consegui, só que fazendo com o TextArea, agora pode me ajudar de novo? Assim, esse textarea estão em um frame,(vou chamar de frame A), e eu tenho um outro frame(que irie chama-lo aqui de frame B). Bem no frame B, eu tenho um botão, onde vai chamar o frameA, e fazer a seleção com o código lá que você me passou. Daí, quando eu fechar o frame A, ja com as disciplinas selecionadas, aparecer as disciplinas selecionadas e separadas por “,” ou por “;” no TextField do frameB. Vlw! Obrigado! desculpa aí tantas perguntas! Ah eu dei uma olhada nos links, que você mandou, mas eles não ensinão esta ultima dúvida minha aí.

Criado 25 de outubro de 2011
Ultima resposta 30 de out. de 2011
Respostas 11
Participantes 3