java的label中如何实现换行输出?

 我来答
cliff77
推荐于2018-05-06 · TA获得超过482个赞
知道小有建树答主
回答量:276
采纳率:0%
帮助的人:0
展开全部
swing中的大部分组件可以使用html的语法,JLabel的文本换行输入可以使用下面的语句:

MyJLable.setText("<html><p>第一行</p></p>第二行</p></html>");

参考资料是Sun的教程,可以看看

参考资料: http://java.sun.com/docs/books/tutorial/uiswing/components/html.html

百度网友2d06b17ac
2007-11-14 · 超过43用户采纳过TA的回答
知道小有建树答主
回答量:255
采纳率:0%
帮助的人:95.1万
展开全部
Label label = new Label(len);

"len"就是生成的时候指定的LABEL的宽度..
label有方法可以获得到那个参数的..
我不记得了

if(label.getText.lenth==label.len){
label.setText=label.getText+'\n';
}

以上只是理论.
我试了.
行不通..
下面这个是我从别处找的..
可行..
你分析一下

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

class C extends JFrame {
public C() {
JTable tbl = new JTable(new String[][]{{
"JTable 里单元格内容的显示器是 TableCellRenderer。",
"默认的显示器(DefaultTableCellRenderer)继承 JLabel 所以不方便多行显示。",
"要多行显示应该继承 JTextArea(参看下面的 TableCellTextAreaRenderer 类)。",
"当然,别忘了调用 JTable.setDefaultRenderer() 登记你的显示器。"}},
"A B C D".split(" "));
tbl.setDefaultRenderer(Object.class, new TableCellTextAreaRenderer());

add(new JScrollPane(tbl));
setSize(800, 200);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}

public static void main(String[] args) { new C(); }
}

class TableCellTextAreaRenderer extends JTextArea implements TableCellRenderer {
public TableCellTextAreaRenderer() {
setLineWrap(true);
setWrapStyleWord(true);
}

public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
// 计算当下行的最佳高度
int maxPreferredHeight = 0;
for (int i = 0; i < table.getColumnCount(); i++) {
setText("" + table.getValueAt(row, i));
setSize(table.getColumnModel().getColumn(column).getWidth(), 0);
maxPreferredHeight = Math.max(maxPreferredHeight, getPreferredSize().height);
}

if (table.getRowHeight(row) != maxPreferredHeight) // 少了这行则处理器瞎忙
table.setRowHeight(row, maxPreferredHeight);

setText(value == null ? "" : value.toString());
return this;
}
}

参考资料: http://zhidao.baidu.com/question/32334688.html?si=1

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友90bfaa5df
2007-11-09 · TA获得超过117个赞
知道答主
回答量:70
采纳率:0%
帮助的人:61.6万
展开全部
上面的说得有道理……
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式