Emballage automatique du texte dans un JLabel
Dans Java Swing, il n'y a pas de propriété intégrée de "retour à la ligne" pour JLabel composants. Cependant, nous pouvons obtenir cet effet en utilisant le style HTML.
Solution : Utiliser la largeur HTML
Au lieu de définir une propriété de retour à la ligne, nous pouvons définir explicitement la largeur du Corps HTML de JLabel utilisant CSS. Cette largeur déterminera le nombre de lignes à restituer et donc la hauteur préférée de l'étiquette.
En définissant la largeur en CSS, nous évitons d'avoir à calculer manuellement où les sauts de ligne doivent se produire ou à déterminer la taille optimale de l'étiquette.
Voici un exemple de code Java qui montre comment définir la largeur d'un JLabel en utilisant HTML :
import javax.swing.*; public class FixedWidthLabel { public static void main(String[] srgs) { final String s = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean eu nulla urna. Donec sit amet risus nisl, a porta enim. Quisque luctus, ligula eu scelerisque gravida, tellus quam vestibulum urna, ut aliquet sapien purus sed erat. Pellentesque consequat vehicula magna, eu aliquam magna interdum porttitor. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Sed sollicitudin sapien non leo tempus lobortis. Morbi semper auctor ipsum, a semper quam elementum a. Aliquam eget sem metus."; final String html = "<html><body>
Dans l'exemple, la largeur du corps HTML est défini sur 200 px et 300 px pour deux boîtes de dialogue de message distinctes, ce qui entraîne le retour à la ligne du texte en conséquence.
Exemple de sortie
La sortie du code ci-dessus sera deux boîtes de dialogue de message :
Cette technique fournit un moyen simple d'obtenir un retour à la ligne dans les composants JLabel. sans recourir à des bibliothèques tierces ou à des calculs compliqués.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!