Alignement du texte dans un JTextPane
Salut
j'utilise un JTextPane,
Le probléme est que le texte que j'insére est toujours centré.
je voudrais que le texte apparait à gauche(LEFT align)
j'ai essayé cette methode mais sans resultat:
Code:
1 2 3 4 5
|
jTextPane = new JTextPane();
SimpleAttributeSet attribs = new SimpleAttributeSet();
StyleConstants.setAlignment(attribs, StyleConstants.ALIGN_LEFT);
jTextPane.setParagraphAttributes(attribs, true); |
Comment modifier l'alignement de mon texte?
Une réponse un peu détournée
En fait, je penses qu'il y a moyen de dire qu JTextPane que l'on désire justifier à gauche son contenu. Mais je ne sais pas comment faire dans l'immédiat. Par contre, je vous propose de tenter cela en attendant de trouver la vrai réponse, il n'est pas impossible que ça fontionne.
Ajoutez le texte suivant au tout début du texte que vous insérrez dans votre JTextPane :
<HTML><DIV align=left>
Puis à la fin du texte que vous insérrez dans le JTextPane, ajoutez cela :
</DIV></HTML>
Normalement, le code HTML ne sera pas affiché mais interprèté ce qui devrait agir au niveau du texte en lui même et donc donner le résultat recherché. De plus, avec le balisage HTML vous pouvez vous amuser en intégrant le dessin d'un bouton grâce au balisage input par exemple. On peut aussi présenter une URL sous forme d'anchor et je crois même qu'elle est fonctionnelle. Bref, ce peut être une alternative interressante si toutefois ça marche...
Je vais maintenant regarder JTextPane de plus près...
Il y a un truc que je ne comprends pas.
Me revoilà, j'ai lancé mon netBeans, créé rapidement un petit projet avec une fenêtre dans laquelle j'ai mis un JTextPane.
Voilà comment Netbeans a instancié le JTextPane :
Code:
1 2 3
|
jTextPane1 = new javax.swing.JTextPane();
jTextPane1.setContentType("text/plain"); |
Il place ce dernier dans un JScrollPane, mais je penses que cela n'a pas d'importance par rapport à votre problème.
Ensuite, dans le code de ma fenêtre, juste après la méthode initcomponents() de netbeans placée dans le constructeur de cette dernière, j'ai ajouté :
Code:
1 2
|
jTextPane1.setText("Ceci est un test"); |
Après lancement de l'application, le texte apparaît justifié à gauche ? Il n'est pas centré.
J'ai alors apporté une petite modification au composant JTextPane en mettant text/html au lieu de text/plain pour son type de contenu. Mis à part que la police change, la justification ne change pas, ce n'est toujours pas centré.
Je me demande donc pourquoi c'est centré chez vous ?
Pourriez-vous montrer un peu plus de code ?