IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

[Swing] Centré un texte dans un JTextPane


Sujet :

AWT/Swing Java

  1. #1
    Candidat au Club
    Inscrit en
    Avril 2003
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 4
    Points : 2
    Points
    2
    Par défaut [Swing] Centré un texte dans un JTextPane
    Bonjour,

    J'aimerais centré un texte dans un JTextPane ou bien un JTextArea, mais je ne vois vraiment pas comment faire car j'ai essayé plusieurs petite bidouilles mais rien à faire le texte à l'intérieur des composants reste toujours aligné a gauche.
    Si le texte tiendrais sur une ligne le tour serait jouer avec un Jtextfield, mais non il me faut 2 lignes. Et en plus je ne peux pas utiliser de balise html à cause de la conception globale de l'application.

    Merci pour vos réponses.




    [Modéré par Didier]
    Ajout de tag dans le titre
    Lire les règles du forum : Règles du forum Java

  2. #2
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 852
    Points : 4 759
    Points
    4 759
    Par défaut
    A mon avis, avec un JEditorPane, tu pourras centrer ton texte comme tu le veux.

    @ ++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  3. #3
    Candidat au Club
    Inscrit en
    Avril 2003
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Ok, merci! je vais essayer.

    Mais si quelqu'un aurait un petit exemple de code à me soumettre celà serait génial car j'avoue ne pas trop savoir comment utiliser le jeditorpane.

    @+

  4. #4
    Candidat au Club
    Inscrit en
    Avril 2003
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Personne n'a d'idée?

  5. #5
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 852
    Points : 4 759
    Points
    4 759
    Par défaut
    Un petit link qui peut t'aider !

    @ ++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  6. #6
    Candidat au Club
    Inscrit en
    Avril 2003
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Ok, merci pour le petit links. Mais en fait j'ai reussit à le faire avec un jtextPane.
    Si cela interesse quelqu'un voici les quelques lignes de code qui resolvent le problème.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    JTextPane lbl = new JTextPane(); 
    lbl.setOpaque(true);
    StyledDocument doc = lbl.getStyledDocument();		
    MutableAttributeSet center = new SimpleAttributeSet();		
    StyleConstants.setAlignment(center, StyleConstants.ALIGN_CENTER);
    doc.setParagraphAttributes(0, 0, center, true);
    lbl.setText("Un texte centré");
    a+

  7. #7
    Membre régulier Avatar de kha_yassine
    Inscrit en
    Juin 2007
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 126
    Points : 76
    Points
    76
    Par défaut
    Merci titi_22

  8. #8
    Membre régulier
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Juin 2011
    Messages
    248
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2011
    Messages : 248
    Points : 74
    Points
    74
    Par défaut


    Bonjour, moi je souhaiterais ne centrer qu'une partie du texte, à savoir le titre, et non tout le contenu du JTextPane.
    Mais je n'y parviens point.

    Comment faire ?

    Voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
     
     
     
    	public JTextPane getPanel ()
    	{
     
    		JTextPane jTextPane = new JTextPane();
        	             jTextPane.setEditable(true);
     
     
     
        	// définition des styles
            Style defaut = jTextPane.getStyle("default");
        	      StyleConstants.setFontSize(defaut, 13);
                       StyleConstants.setFontFamily(defaut, "TimesRoman");
            Style style1 = jTextPane.addStyle("style1", defaut);
        	      StyleConstants.setFontFamily(style1, "TimesRoman");
        	      StyleConstants.setFontSize(style1, 16);
        	      StyleConstants.setBold(style1, true);
            Style style2 = jTextPane.addStyle("style2", jTextPane.getLogicalStyl());
    	       StyleConstants.setBold(style2, true);
    	       StyleConstants.setFontSize(style2, 14);
    	       Style style3 = jTextPane.addStyle("style3",   jTextPane.getLogicalStyle());
                       StyleConstants.setBold(style3, true);
                       StyleConstants.setFontSize(style3, 13);   
            Style style4 = jTextPane.addStyle("style4", jTextPane.getLogicalStyle());
                  StyleConstants.setBold(style4, true);
                  StyleConstants.setFontSize(style4, 20);    
     
     
     
          	/**TITRE A CENTRER**/
                 String sTitre = "Isolement acoustique des façades Dossier LEK";
     
                 /**A JUSTIFIER A GAUCHE**/
        	String s1 = "I- PREAMBULE\n\n";
         	String s2 = "    La société ACSON a été mandatée par Monsieur "+ s_nom + " afin de réaliser l'étude acoustique de sa maison située "+ s_rue +" à "+ s_ville+ " ("+ s_codePostal+ ") .\nCette étude se fait sur plans et à partir du cahier des charges du constructeur. Elle permet de définir les isolements acoustiques des bâtiments d'habitation par rapport à l'arrêté du 30 mai 1996 en vigueur.\nNous proposerons éventuellement les matériaux à mettre en oeuvre en façade afin que les isolements soient respectés d'un point de vue règlementaire.\n\n\n";
     
        	      StyledDocument sDoc = jTextPane.getStyledDocument();
     
     
     
        	      MutableAttributeSet center = new SimpleAttributeSet();
        	      StyleConstants.setAlignment(center, StyleConstants.ALIGN_CENTER);
        	      sDoc.setParagraphAttributes(0, 0, center, true);
        	      sDoc.insertString(pos, sTitre, style4);pos+= (sTitre+"\n").length();
     
        	      MutableAttributeSet left = new SimpleAttributeSet();	
        	      StyleConstants.setAlignment(left, StyleConstants.ALIGN_LEFT);
        	      sDoc.setParagraphAttributes(0, 0, left, true);
     
        	      sDoc.insertString(pos, s1, style1);pos+=s1.length();
        	      sDoc.insertString(pos, s2, defaut);pos+=s2.length();

    Mais ce code me centre TOUT le texte !!
    "Les ordinateurs font toujours ce qu'on leur dit, mais jamais ce qu'on veut."

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Souligner du Texte dans un jTextPane
    Par hazaki dans le forum Interfaces Graphiques en Java
    Réponses: 0
    Dernier message: 24/02/2013, 17h57
  2. positionement du text dans une jtextpane
    Par sofiene D dans le forum Interfaces Graphiques en Java
    Réponses: 0
    Dernier message: 15/11/2011, 08h36
  3. Sélection de texte dans 1 JTextPane inclus dans 1 JTable
    Par Zorallig dans le forum Composants
    Réponses: 2
    Dernier message: 20/07/2010, 15h36
  4. Alignement du texte dans un JTextPane
    Par riadhhwajdii dans le forum Composants
    Réponses: 6
    Dernier message: 16/06/2010, 00h35
  5. Réponses: 3
    Dernier message: 03/10/2007, 09h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo