Ok, wow. Question difficile. Donc, je n'ai pas trouvé un moyen d'obtenir le style d'un personnage donné. Vous pouvez, cependant, obtenir le MutableAttributeSet pour un caractère donné, puis tester pour voir si le style est dans cet ensemble d'attributs.
Style s; //your style
Element run = styledDocument.getCharacterElement(
textPane.getSelectionStart());
MutableAttributeSet curAttr =
(MutableAttributeSet)run.getAttributes();
boolean containsIt = curAttr.containsAttributes(s);
Un problème avec obtenir le style pour une série de caractères est qu'il peut y avoir plus d'un style appliqué à cette gamme (exemple: vous pouvez sélectionner du texte où certains est gras et certains n'est pas).
Pour mettre à jour le texte sélectionné, vous pouvez:
Style s; //your style
JTextPane textPane; //your textpane
textPane.setCharacterAttributes(s, false);
Oh, et il semble que la fonction getLogicalStyle ne fonctionne pas parce qu'il est de retour le style par défaut (ou peut-être juste le style) pour le paragraphe qui contient p, plutôt que le style du personnage à la p.
Je viens de visiter le lien java2s et wow, beaucoup d'exemples. – extraneon