4 votes

JTextPane - obtenir la position de départ d'une ligne affichée

J'ai un JTextPane qui est utilisé pour afficher un fichier texte. Le texte apparaît comme suit
Line 1
Line 2
Line 3

Ce que je veux obtenir, c'est l'indice de début de la ligne où mon curseur est actuellement positionné. Existe-t-il une méthode simple dans le JTextPane qui puisse m'aider à atteindre cet objectif ?

4voto

David Kroukamp Points 23503

Essayez quelque chose comme ça :

JTextComponent testingArea = new JTextPane();
....
int caretPos = testingArea.getCaretPosition();
int rowNum = (caretPos == 0) ? 1 : 0;
for (int offset = caretPos; offset > 0;) {
    offset = Utilities.getRowStart(textArea, offset) - 1;
    rowNum++;
}
System.out.println("Row: " + rowNum);

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X