Получить стиль в позиции каретки в JTextPane - PullRequest
1 голос
/ 05 декабря 2010

У меня есть основной текстовый редактор, который может оформлять документы (полужирный, подчеркивание, курсив, подчеркивание, выравнивание по левому / правому краю, по центру, цвету, размеру шрифта / семейству), и все это прекрасно работает. Проблема, с которой я столкнулся, заключается в том, что я хочу, чтобы стиль устанавливал мои кнопки и поля в правильном стиле, в котором находится курсор.

Скажем, например, у меня есть строка

Быстрая коричневая лиса перепрыгивает через ленивую собаку

Когда я быстро нажимаю между u и i, я хочу, чтобы моя кнопка курсива была включена, чтобы указать, что текст, где находится курсор, имеет курсив.

Я использую JTextPane для хранения текста и StyledEditorKit для стиля.

Спасибо.

Ответы [ 2 ]

5 голосов
/ 05 декабря 2010

Я думаю, что вы ищете, это

getCharacterAttributes метод из JTextPane

http://download.oracle.com/javase/7/docs/api/javax/swing/JTextPane.html#getCharacterAttributes()

0 голосов
/ 18 января 2011

Хорошо, просто для тех, кто все еще ищет и не нашел ответа: например:

AttributeSet attributeSet = textPane.getCharacterAttributes();
Object bold = attributeSet == null ? null : attributeSet.getAttribute( StyleConstants.Bold );
System.out.println( "Bold : " + bold );
...