Caros companheiros, estou tentando fazer uma classe
que implementa a interface caretListener, para pegar a
posicao do cursos a cada mudanca dele. Logo em seu
metodo caretUpdate(CaretEvent e), eu desejo pegar a
posicao do cursor e mudar o atributo do documento
associado a um TextPane, mais ou menos assim:
public void caretUpdate(CaretEvent e){
int dot = e.getDot(); //posicao real do cursor
MutableAttributeSet as = (MutableAttributeSet)
tabelaEstilos.get(ITALIC); //Essa tabela esta
certinha , nao se preocupem com ela
doc.setCharacterAttributes(0,dot,as,true); // o
problema esta aqui
}
Porem a ultima linha de codigo provoca uma excecao.(
java.lang.IllegalStateException: Attempt to mutate in
notification
at
javax.swing.text.AbstractDocument.writeLock(AbstractDocument.java:1050))
Andei pesquisando na net e notei que o caretUpdate()
trava mudancas no documento propositalmente. Porem eu
preciso mudar os atributos do documento baseado na
posicao do caret. Como eu faco???? Alguem tem alguma idéia???
=====
Rodrigo Paes - |MoScA|
Ciências da Computação - UFAL
________________________________________________________________________
O YAHOO! GEOCITIES CHEGOU AO BRASIL!
Crie sua home page com tudo em português - http://br.geocities.com
------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------