Java label自动换行

如题,如何实现Java中jlabel的自动换行。注意,是自动换行,不是用HTML控制换行。就像是jtext一样。或者让jtext能够像jlabel一样,融入jframe。... 如题,如何实现Java中jlabel的自动换行。注意,是自动换行,不是用HTML控制换行。就像是jtext一样。或者让jtext能够像jlabel一样,融入jframe。求大神给出解决方案 展开
 我来答
雪飞潇潇
2017-05-18 · TA获得超过6273个赞
知道大有可为答主
回答量:1968
采纳率:91%
帮助的人:845万
展开全部

如果不想使用HTML的换行标签来使JLabel换行, 那么可以调整JTextArea的属性,来实现融入JFrame,模仿JLabel.

参考代码如下

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

//jdk1.8测试通过
//该类继承于JFrame类 实现了ActionListener接口
public class MyFrame extends JFrame implements ActionListener{
JTextArea jta;
public MyFrame() {
jta = new JTextArea();

jta.setLineWrap(true);//自动换行
jta.setEditable(false);//模仿JLabel 禁止编辑文字
jta.setBackground(new Color(238,238,238));//设置背景色和 窗体的背景色一样
//win 10 下, JFrame窗体背景RGB,测来是238,238,238
//这样就可以融入背景中了

//jta.setText("....");//设置文字
add(jta);
JPanel jp = new JPanel();
JButton jbt = new JButton("显示古文");
jbt.addActionListener(this);
jp.add(jbt);
add(jp,BorderLayout.SOUTH);

setTitle("窗口");
        setSize(300, 200);
        setLocationRelativeTo(null);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setVisible(true);

}

public static void main(String[] args) {
new MyFrame();//创建窗体
}

@Override
public void actionPerformed(ActionEvent e) {
//设置jta的文字
jta.setText("山不在高,有仙则名。水不在深,有龙则灵。斯是陋室,惟吾德馨。苔痕上阶绿,草色入帘青。谈笑有鸿儒,往来无白丁。可以调素琴,阅金经。无丝竹之乱耳,无案牍之劳形。南阳诸葛庐,西蜀子云亭。孔子云:何陋之有");

}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式