Samsquanch
Samsquanch

Reputation: 9146

Get style at caret position in a JTextPane

I have a basic text editor that can style documents (bold, underline, italicize, underline, align left/right/center, color, font size/family), and that all works great. The problem I'm having is that I want the style to set my buttons and boxes to the correct styling for where the caret is.

Say, for example, I have the string

the quick brown fox jumps over the lazy dog

When I click between the u and i in quick, I want my italicize button to be toggled on to indicate that the text where the caret is has the italicized styling.

I'm using a JTextPane to hold the text, and a StyledEditorKit for the styling.

Thanks.

Upvotes: 1

Views: 2272

Answers (2)

Diogo
Diogo

Reputation: 548

Ok, just for anyone still looking for and didnt find the answer : for example :

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

Upvotes: 0

mytest
mytest

Reputation: 198

I think what you are looking for, is

getCharacterAttributes method from the JTextPane

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

Upvotes: 5

Related Questions