Lors de l'écriture d'interfaces dans Javaswing, je voulais implémenter un emballage de ligne automatique du contenu texte dans JLabel. Je l'ai vérifié en ligne et j'ai découvert que la plupart d'entre eux étaient tout simplement plus simples en ajoutant un emballage de ligne. J'ai donc écrit une fonction moi-même et je l'ai maintenant publiée pour que tout le monde l'apprenne.
Les rendus sont les suivants:
Le code est le suivant:
package com.zht; import java.awt.borderlayout; import java.awt.dimension; import java.awt.flowlayout; import java.awt.fontmetrics; import java.util.concurrent.timeunit; import javax.swing.jframe; import javax.swing.jLabel; classe publique JLabeldem; Static void Main (String [] args) lance InterruptedException {System.out.println ("Hello"); JLabelDemo jLabelDemo = new JLabelDemo ();} public JLabelDemo () lance InterruptedException {String Text = "Cet espace contient des articles techniques," + "Blogs et des discussions pour les questions et réponses." + "En tant que programmeur Java, de plus en plus de gens estiment que Java développe des programmes à partir des forums", + "Je ne peux pas m'empêcher de me sentir soulagé. Hello"; JLabel Label = New JLabel (); Label.setSize (200, 0); // note que JeLabel doit définir Width // System.out.println (Label.getWidth ()); FlowLayout ()); Add (label); pack (); // setSize (300, 200); setDefaultCloseOperation (jframe.exit_on_close); setLocationRelativeto (null); setVisible (true);} void jLabelSettExt (JLabel Jlabel, stringString) Lascrous InterruptedException {Stringbuilder Builder = Strings StringBuilder ("<html>"); char [] chars = longString.tocharArray (); Fontmetrics Fontmetrics = JLabel.getfontmetrics (JLabel.getfont ()); int start = 0; int len = 0; while (start + len <longString.Length ()) {while (true) {len ++; longString.length ()) Break; if (Fontmetrics.CharSwidth (Chars, start, len)> jLabel.getWidth ()) {Break;}} builder.APPEND (Chars, start, len-1) .Apnd ("<br/>"); start = Len - 1; Len = 0;} Builder.Apprend (Chars longString.Length () - START); builder.append ("</html>"); jLabel.seTText (builder.toString ());}}Résumer
Ce qui précède est tout le contenu de cet article sur l'exemple simple de JLabel d'emballage automatique du contenu. J'espère que ce sera utile à tout le monde. Les amis intéressés peuvent continuer à se référer à ce site:
" Explication détaillée et exemples d'utilisation de la composante swing de programmation Java JLabel "
" La programmation Java implémente le code du bouton circulaire de swing "
S'il y a des lacunes, veuillez laisser un message pour le signaler. Merci vos amis pour votre soutien pour ce site!