Ajuda com JTextPane

13 respostas
guitoper

ola galera, intao, to com um probleminha. estou tentando usar um
JTextPane mais nao estou conseguindo setar o tamanho dele. Ja tentei codificando normal e usando o plugin do eclipse mais ele so aparece pequeno.
desde ja muito obrigado :smiley:

13 Respostas

Ironlynx

Vc tá usando um pane.setPreferredSize(new Dimension(Tam, Tam)); da vida e nada???Posta o código que vc tá usando aqui.

gp7junior

Já tentou usar o setMaximumSize ou o setMinimumSize?

public void setMaximumSize(Dimension maximumSize)

public void setMinimumSize(Dimension minimumSize)

ViniGodoy

O ideal mesmo é que o tamanho exato do seu TextPane seja definido por seu LayoutManager. Assim a janela fica multi-plataforma e facilmente redimensionável.

Geralmente, eu dou ao GridBadLayout e ao Visual Editor essa tarefa

guitoper

bom galera, eu consegui usando o setPreferredSize , tentei
deixar do tamanho do panel usando gridBagLayout mais nao deu certo nao
agora estou precisando fazer duas coisas:
1- deixar uma certa linha com uma cor diferente das outras
2- mudar a cor de algumas palavras reservadas, como no eclipse por exemplo
c alguem puder ajudar =P
vlw galera

ViniGodoy

Para isso você terá que trabalhar diretamente com a interface FormattedDocument. Há um tutorial breve sobre a interface document aqui. Eu também sugiro que você baixe esse editor, que usa o antlr para fazer syntax hightlighting de código em java. No código (que está bem documentado, por sinal), você conseguirá encontrar todos os elementos que precisa para pintar o seu JTextPane.

Aliás, esse editor também usa o GidBagLayout para deixar o JTextPane do tamanho do form.

guitoper

vlw pela força kara
vou dar uma olhada nesses artigos
brigadao

guitoper

bom
andei dando uma olhada no editor
ele ficou muito maneiro msm
mais eu estou precisando de uma coisa mais simples
estava tentando aproveitar o código dele, porem está dando
erro pq eu nao tenho o antlr, alguem sabe como faço pra
implementar o antlr no meu projeto?

ViniGodoy

O mais fácil é você baixar o antlr do site original. E depois, adiciona-lo ao class path do arquivo.

Ou você quer implementa-lo do zero? Nesse caso, é pegar um bom livro de compiladores, engrossar os cabelos do peito e ir a luta!

ViniGodoy

Falei aqui com o André (o implementador do editor) e ele falou que uma boa também é você baixar o plugin do antlr para o eclipse, no site:
http://antlreclipse.sourceforge.net/

Isso já facilita a vida pra caramba.

guitoper

bom, primeiramente vlw ae Vini pela força q vc ta dando.
a questao do ANTLR ja está resolvida, agora gostaria de fazer duas coisas:

1- deixar uma linha inteira do editor de outra cor.
2- mudar a cor de palavras reservadas, por exemplo, no editor q vc me passou “int” e “float” fica azul, porem eu gostaria q o int ficasse verde.

aguardo resposta e vlw msm pela força.

Wolf_X

ola, eu tenho uma pergunta, nao tem muita coisa a ver com a pergunta do colega nao , mas eu axei idiota d+ pra ter um topico soh pra ela :smiley:

eu tenho um JEditorPane dentro de uma JScrollPane e tento setar o CaretPosition dele dando um getText.length() , isso funcionava enquanto eu usava JTextArea , mas agora q mudei pra JEditorPane ta me lançando uma exeção de IlegalArgument, pq ?

descupem a ignorancia …:oops:

Wolf_X

po , q burrice, eu tava pegando o tamanho direto do JEditorPane como eu fazia no JTextArea , e nao criando um Document :frowning:

qdo eu criei um document deu td certo , :smiley:

guitoper

bom, primeiramente vlw ae Vini pela força q vc ta dando.
a questao do ANTLR ja está resolvida, agora gostaria de fazer duas coisas:

1- deixar uma linha inteira do editor de outra cor.
2- mudar a cor de palavras reservadas, por exemplo, no editor q vc me passou “int” e “float” fica azul, porem eu gostaria q o int ficasse verde.

aguardo resposta e vlw msm pela força.

Criado 28 de março de 2007
Ultima resposta 27 de abr. de 2007
Respostas 13
Participantes 5