Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1716 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [Debutant] JTextPane, ne pas afficher les balises html

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Debutant] JTextPane, ne pas afficher les balises html

n°2113682
Guillaumux
Posté le 28-11-2011 à 18:06:35  profilanswer
 

Bonjour à tous,
 
Je souhaite créer une page html à partir d'un programme Java et j'aimerai que dans mon JTextPane, lorsque j'écris un mot et que je veux le mettre en gras, je le surligne et qu'il se mette en " gras" et non pas en "<b> gras </b>".
 
Si je fais  

Code :
  1. monJtextpane.setText("<b>" + monJtextpane.getSelectedText() + "</b>" );

ça marche mais le problème est qu'il remplacera tout le texte de mon JTextPane par ma sélection en gras.
 
Donc j'ai voulu faire

Code :
  1. monJtextpane.replaceSelection("<b>" +monJtextpane.getSelectedText()+ "</b>" );

Mais cela m'affiche les balises sans me mettre le texte en gras.
 
Malgré un grand parcours de la javadoc, je ne trouve pas comment faire, donc si vous avez une idée, merci  :)


Message édité par Guillaumux le 28-11-2011 à 20:05:25
mood
Publicité
Posté le 28-11-2011 à 18:06:35  profilanswer
 

n°2113705
Guillaumux
Posté le 28-11-2011 à 20:04:39  profilanswer
 

J'ai finalement trouvé une méthode mais pas très pratique:
 

Code :
  1. StringBuffer s =new StringBuffer(monJtextpane.getText()); // on prends le texte du JTextPane
  2. int deb=s.indexOf(monJtextpane.getSelectedText()); // index du début du mot
  3. int fin = s.indexOf(monJtextpanee.getSelectedText()) + monJtextpane.getSelectionEnd()-monJtextpane.getSelectionStart(); // index fin du mot
  4. String st= balise.getBegining() +monJtextpane.getSelectedText()+balise.getEnd(); // String entouré des balises
  5. s.replace( deb , fin , st ); // on remplace dans le string buffer le mot surligner par le mot entouré de balise
  6. String chaine=new String(s); // on le transforme en String
  7. monJtextpane.setText(chaine); //et on modifie tout le texte


 
Mais ça ne marche que lorsque l'on sélectionne une seule ligne :/
 
Donc si vous avez une autre solution, je suis preneur  :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [Debutant] JTextPane, ne pas afficher les balises html

 

Sujets relatifs
Comment afficher une image d'un dossier protégéTraduire un fichier HTML volumineux ...
Afficher une page HTML dans une autre[BATCH] Afficher le contenu d'un sous dossier
[QST] Visualisation d'une page HTML[Débutant]Private sub dans private sub?(VB)
HTML/CSS : Centrage tableau bugAide sur la mise en page d'un site (HTML/CSS)
html/css : des "lignes à hauteur dynamiques" ? 
Plus de sujets relatifs à : [Debutant] JTextPane, ne pas afficher les balises html


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR