在用javaSwing写界面时,想实现JLabel中的文本内容自动换行,网上查了一下,大多是一些比较简单的加个换行而已,于是自己写了一个函数,现在贴出了供大家学习。
效果图如下:
代码如下:
包com.zht; 进口java.awt.BorderLayout; 进口java.awt.Dimension; 进口java.awt.FlowLayout; 进口java.awt.FontMetrics; 进口java.util.concurrent.TimeUnit; 进口javax.swing.JFrame; 进口javax.swing.JLabel; 公开课JLabelDemo延伸JFrame { 公共静态void main (String [] args) 抛出InterruptedException { System.out.println (“hello”); JLabelDemo JLabelDemo=new JLabelDemo (); } 公共JLabelDemo()抛出InterruptedException { 字符串文字="这个空间包含技术文章,“ +”博客和论坛问答”。 +”作为一个Java程序员,从论坛上感受到使用Java开发程序的人越来多,“ + "心中不免欣慰.hello”; JLabel标签=new JLabel (); 标签。setSize (200 0);//注意JLabel一定要设置宽度//System.out.println (label.getWidth ()); JlabelSetText(标签、文本); setLayout(新FlowLayout ()); 添加(标签); 包();//setSize (300、200); setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); setLocationRelativeTo(空); setVisible(真正的); } 空白JlabelSetText (JLabel JLabel字符串longString) 抛出InterruptedException { StringBuilder builder=new StringBuilder (“& lt; html>”); char[]是=longString.toCharArray (); FontMetrics FontMetrics=jLabel.getFontMetrics (jLabel.getFont ()); int开始=0; int len=0; 而(开始+ len & lt;longString.length ()) { 而(真){ len + +; 如果(开始+ len祝辞longString.length())休息; 如果(fontMetrics。charsWidth(识字课开始,兰) 比;jLabel.getWidth ()) { 打破; } } 构建器。追加(识字课,开始,len-1) .append (“& lt; br/祝辞”); 开始=开始+兰- 1; len=0; } 构建器。追加(识字课,开始,longString.length()实体法); builder.append (“& lt;/html>”); jLabel.setText (builder.toString ()); } }
以上就是本文关于Jlabel实现内容自动换行简单实例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:
<强>《强> <强> Java编程swing组件JLabel详解以及使用示例强> <强>》强>
<强>《强> <强> Java编程实现swing圆形按钮实例代码强> <强>》强>
如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!