JAVA - Espace texte /bordures JLabel

Résolu/Fermé
Shankara Messages postés 27 Date d'inscription dimanche 4 février 2007 Statut Membre Dernière intervention 9 février 2019 - 26 avril 2010 à 00:59
Shankara Messages postés 27 Date d'inscription dimanche 4 février 2007 Statut Membre Dernière intervention 9 février 2019 - 26 avril 2010 à 23:20
Bonjour à tous,

Je débute sous Java et je voudrais savoir s'il est possible d'augmenter l'espace entre le texte contenu dans un JLabel et ses bordures, et si oui comment. En effet, mes bordures sont collées à mon texte, et je voudrais aérer tout cela. J'ai essayé d'utiliser ce genre de chose :
...

private JLabel label = new JLabel("Veuillez sélectionner votre compte :");
private int dim1Label;
private int dim2Label;
private int labelX;
private int labelY;

...

FontMetrics metrics = label.getFontMetrics(label.getFont());
dim1Label = metrics.stringWidth(label.getText())+20;
dim2Label = metrics.getHeight()+20;
label.setSize(new Dimension(dim1Label,dim2Label));
labelX = (int)label.getLocation().getX()-10;
labelY = (int)label.getLocation().getY()+10;
label.setBounds(labelX, labelY, dim1Label, dim2Label);

...


Mais mes bordures restent collées au texte. :colere2:

Quelqu'un aurait-il la solution svp ?
Merci d'avance.

A voir également:

3 réponses

Shankara Messages postés 27 Date d'inscription dimanche 4 février 2007 Statut Membre Dernière intervention 9 février 2019 4
Modifié par Shankara le 26/04/2010 à 23:20
J'ai enfin réussi à trouver après 2 jours de recherche. Je ne sais pas si la méthode que j'ai trouvée est celle que l'on utilise lorsque l'on programme dans les règles de l'art, mais cette supposée bidouille me convient pour l'instant.
Il faut utiliser la méthode setBorder du JLabel en créant une bordure vide, qui permet de créer de l'espace autour du texte mais qui ne dessine pas la bordure. Une émulation de marges en fait.

Ca donne ça :
label.setBorder(BorderFactory.createEmptyBorder(20, 20, 20, 20));


Merci à ceux qui auront pris la peine de me lire et en espérant avoir pu aider d'autres personnes.
A bientôt pour de nouvelles questions de débutante paumée ...
1
choubaka Messages postés 39375 Date d'inscription jeudi 4 avril 2002 Statut Modérateur Dernière intervention 14 avril 2024 2 100
26 avril 2010 à 10:11
salut

label.setHorizontalTextPosition(JLabel.CENTER);
0
Shankara Messages postés 27 Date d'inscription dimanche 4 février 2007 Statut Membre Dernière intervention 9 février 2019 4
26 avril 2010 à 21:31
Ta solution ne fonctionne pas désolée ... Merci quand même. Une autre idée ?
0