》》求指点》》自定义表、表模式,如何设置列名(表头)?

It_EyeIsNotCs_dn 2012-03-22 10:51:25
表模式: UserTableModel extends AbstractTableModel
自定义表:MyJTable extends JTable

表模式构造方法:
public UserTableModel(boolean flag) {
super();
if (flag) {
getAllUser(null);
}
}



表构造方法:
MyJTable(TableModel tModel, int width, int height) {

setModel(tModel);

DefaultTableCellRenderer render = new DefaultTableCellRenderer();

setDefaultRenderer(Object.class, render);

setPreferredScrollableViewportSize(new Dimension(width, height));

}




创建表格:
tableModel = new UserTableModel(true);
myTable = new MyJTable(uTableModel, 700, 50);

效果表的列名是A、B、C、D……,如何自定义列名呢? 我觉得应该从表模式里面设定好,可AbstractTableModel并没有提供这样的方法啊,求大师们指教啊,谢谢!
...全文
163 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
It_EyeIsNotCs_dn 2012-03-23
  • 打赏
  • 举报
回复
继承AbstractTableModel要重写一个方法:

final String[] columnNames =
{
"用户ID",
"用户名",
"登录名",
"电话",
"是否激活",
"备注",
"邮箱",
"密码"
};

public String getColumnName(int col) {
return columnNames[col];
}

这样就搞定。
欢迎讨论,40分送人。
It_EyeIsNotCs_dn 2012-03-23
  • 打赏
  • 举报
回复
这个方法自动执行的,就跟paintComponent(Graphics g)一样。不知道说的不对。回去查查。
It_EyeIsNotCs_dn 2012-03-23
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 flagiris 的回复:]
重写还是添加?分送我吧。。。
[/Quote]

重写,没那本领添加吧。。。
菖蒲老先生 2012-03-23
  • 打赏
  • 举报
回复
重写还是添加?分送我吧。。。
It_EyeIsNotCs_dn 2012-03-23
  • 打赏
  • 举报
回复
求提点,5点结贴。
awusoft 2012-03-23
  • 打赏
  • 举报
回复
final String[] columnNames =
{
"用户ID",
"用户名",
"登录名",
"电话",
"是否激活",
"备注",
"邮箱",
"密码"
};

public String getColumnName(int col) {
return columnNames[col];
}

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧