définir l'image de fond dans le Jlabel (Étiquette) de la boîte de texte dynamique
Comment définir l'image de fond de l'étiquette de la boîte de texte dynamique.
par exemple:
JLabel label = new JLabel();
label.setIcon("/image/image.png");
label.setText("Text1");
Ce code ne fonctionne pas, parce que Le texte n'est pas afficher dans le centre de l'image.
OriginalL'auteur Sathish Robert | 2011-11-05
Vous devez vous connecter pour publier un commentaire.
C'est très facile.
setPreferredSize
fonctionne, mais est-il un autre moyen de le faire sans réglage manuel de la largeur et de la hauteur? (c'est à dire lorsque je modifie le .png dimensions, je n'ai pas besoin de modifier les codes pour s'adapter à la .png)Ensuite, vous devez remplacer la getPreferredSize() la méthode de l'étiquette et de retour de l'icône dimensions.
OriginalL'auteur Stephan
Vous n'avez pas défini de la façon dont le texte doit être peinte par rapport à l'image. Voici 4 approches différentes qui n'impliquent pas de la peinture custom:
OriginalL'auteur camickr
Il ya plusieurs options disponibles. Par exemple, vous pouvez placer le JLabel sur le dessus de l'autre JLabel (bien que donner le conteneur JLabel viable layout manager), ou vous pouvez dessiner l'image directement dans le JLabel la méthode paintComponent. Dans le second cas, assurez-vous que le JLabel est opaque.
OriginalL'auteur Hovercraft Full Of Eels
Utiliser ce code
À l'aide de cette icône aligner au centre comme fond de JLabel
OriginalL'auteur Vishakha Pol