Pessoal, boa tarde.
Como faço pra inserir várias linhas no JTextPane? (existe algum comando especifico?)
Uso o .setText, porém ele substitui a cada novo comando, gostaria de fazer igual ao .append() do JtextArea.
Preciso formatar cores nesse JTextPane (em html), por isso não posso usar o JtextArea.
Obg a todos.
Guarde o conteúdo do que vai ser mostrado no JTextPane em uma string, e vá acrescentando dados a essa string. Depois de acrescentar os dados, use setText.
A propósito, você está usando HTML, certo? Nesse caso, como você tem de levar em conta que você tem um tag para fechar o html, não dá simplesmente para ficar acrescentando cegamente. Você precisa, para acrescentar mais dados, de tirar a tag de fechamento, acrescentar os dados, e acrescentar o tag novamente - e acho que é por esse motivo que não existe um “append” como no JTextArea - é que essa regra de tirar ou pôr coisas para que fique sempre válido depende da aplicação e do formato dos dados.
[quote=entanglement]Guarde o conteúdo do que vai ser mostrado no JTextPane em uma string, e vá acrescentando dados a essa string. Depois de acrescentar os dados, use setText.
A propósito, você está usando HTML, certo? Nesse caso, como você tem de levar em conta que você tem um tag para fechar o html, não dá simplesmente para ficar acrescentando cegamente. Você precisa, para acrescentar mais dados, de tirar a tag de fechamento, acrescentar os dados, e acrescentar o tag novamente - e acho que é por esse motivo que não existe um “append” como no JTextArea - é que essa regra de tirar ou pôr coisas para que fique sempre válido depende da aplicação e do formato dos dados. [/quote]
Certo… vou testar aqui e retorno.
Consegui resolver como foi passado pelo nosso amigo entanglement.
String armazena = je_tx_pane.getText().replaceAll("<[^>]+>", "")+"\n\n";
Substitui as Tags html do conteudo que pegava, armazeno na String armazena e acrescento no painel depois novamente.
je_tx_pane.setText(armazena+"\n("+mostra_data.hora+")<font color=\"#FF0000\"> Fulano disse.: </font>"+tf_msg.getText()+" \n");
Obrigado entanglement;