Est-il possible de mettre du texte sur une image dans un bouton?
J'ai .des images jpg dans mes boutons. Je voudrais aussi mettre un peu de texte en haut de l'image. J'utilise la syntaxe suivante:
JButton btn = new JButton(label,icon);
Mais je ne vois pas de texte dans les boutons (seulement de l'image). Ce que je fais mal?
Viens de remarquer que pas une seule fois dans votre dernier 15 réponses avez-vous la peine d'accepter toute réponse. Si vous avez tout ce temps à poster des questions, alors vous avez aussi le temps d'accepter une réponse qui a été donnée.
OriginalL'auteur Roman | 2010-04-26
Vous devez vous connecter pour publier un commentaire.
Je n'ai aucune idée pourquoi vous ne voyez pas le texte et l'icône. Par défaut, le texte devrait être peint à la droite de l'icône.
Pour afficher le texte en haut de l'icône que vous utilisez:
OriginalL'auteur camickr
Si vous voulez jouer de la manière que vous aimez en aucun composant swing, vous pouvez très bien remplacer la peinture (le) de la méthode. De cette façon, vous pouvez faire ce que vous voulez.
OriginalL'auteur bragboy
JButton button = new JButton(text,icon);
button.setVerticalTextPosition(SwingConstants.TOP);
button.setHorizontalTextPosition(SwingConstants.CENTER);
Cela a fonctionné pour moi.
OriginalL'auteur quicksilver
Êtes-vous essayer de superposer du texte sur une image ou tout simplement la position du texte à l'extérieur de l'image?
Positiioning texte en dehors de l'image est facile et est le comportement par défaut comme @camickr a mentionné.
Pour déplacer le texte vers le haut, vous pouvez :
Aussi, veuillez noter que seulement .gif, .jpg, et .png. seront traitées par ImageIcon
OriginalL'auteur ring bearer
Par défaut, swing boutons ont un texte horizontal position de
SwingConstants.TRAILING
, qui va dessiner le texte après l'icône (pensez à une case à cocher ou un bouton radio). Si vous souhaitez que le texte centré sur l'icône, vous juste besoin de mettre le bouton horizontal de la position du texte:OriginalL'auteur Jason Day