Recherche de texte dans un JTextPane

Résolu
lechiconeur Messages postés 11 Date d'inscription mercredi 9 juin 2004 Statut Membre Dernière intervention 26 octobre 2009 - 20 oct. 2009 à 01:04
lechiconeur Messages postés 11 Date d'inscription mercredi 9 juin 2004 Statut Membre Dernière intervention 26 octobre 2009 - 21 oct. 2009 à 18:05
Bonjour. Voila mon problème. J'ai un JtextPane (ToolBarExemple.pane) aux format html dans lequel j'aimerai rechercher une chaîne de caractère.
		position = ToolBarExample.pane.getText().indexOf(jTextField1.getText(),position);
if ( position!=-1){
Caret carac = ToolBarExample.pane.getCaret();
carac.setSelectionVisible(true);
carac.setVisible(true);
carac.setDot(position-1);
carac.moveDot(position+jTextField1.getText().length()-1);
position=position+jTextField1.getText().length();
}
else{
JOptionPane.showMessageDialog(tabrechercherremplacer, "Le document a été parcouru. Le texte n'a pas pu être trouvé.", "Rechercher ...", JOptionPane.WARNING_MESSAGE);
}

Les méthodes setSelectionStart et select du JTextPane ne donnant pas de résultat, je me suis tourné vers un Caret. Le problème est que la variable position me renvoie la position du texte avec les balises html alors le Caret lui ce déplace seulement sur le texte visible. Auriez-vous une solution soit pour récupérer que le texte visible du JtextPane? merci!

fred

3 réponses

lechiconeur Messages postés 11 Date d'inscription mercredi 9 juin 2004 Statut Membre Dernière intervention 26 octobre 2009 2
21 oct. 2009 à 18:05
C'est bon j'ai trouver une solution. Ilsuffit de passer par la méthode
position = ToolBarExample.pane.getDocument().getText(0, ToolBarExample.pane.getDocument().getLength()).indexOf(texteAChercher,position);

fred
3
Utilisateur anonyme
20 oct. 2009 à 09:49
Salut,

Tu peux essayer:

if (ToolBarExample.pane.getText().contains(jTextField1.getText()))
{
...


Cordialement,

...\ Dan /...
0
lechiconeur Messages postés 11 Date d'inscription mercredi 9 juin 2004 Statut Membre Dernière intervention 26 octobre 2009 2
20 oct. 2009 à 22:18
Merci pour ta réponse mais je crois que tu n'as pas compris mon problème. J'arrive bien à récupérer la position mais po celle du texte visible dans le JtextPane
si je fait un getText de mon jtextpane il me renvoie :
<html>
<head>
</head>

test

</html>

Alors qu'a l'écran je ne voit que le mot test!
la position que je récupère c 44 ce qui correspond bien à la position dans le code HTML mais po dans le texte visible.

fred
0
Rejoignez-nous