swing jtable表头设置

1. 不放在 JScrollPane 上, 但是需要给表加个边框.

 

Java代码 复制代码  收藏代码
  1. table.setBorder(BorderFactory.createEtchedBorder());   
  2.   
  3. panel.add(table);  
table.setBorder(BorderFactory.createEtchedBorder());

panel.add(table);
 


 

2. 放在 JScrollPane 上, 但是把表头隐藏..

 

Java代码 复制代码  收藏代码
  1. table.getTableHeader().setVisible(false);   
  2.   
  3. tableScrollPane.setViewportView(table);   
  4. panel.add(tableScrollPane);  
table.getTableHeader().setVisible(false);

tableScrollPane.setViewportView(table);
panel.add(tableScrollPane);

 

 

 

缺点: 在本来表头的位置出现一片空白, 难看. 改进: 如果在前面将表头内容全部设为 "", 就可以去掉这片空白, 效果和 3 一样.(http://www.my400800.cn )

 

Java代码 复制代码  收藏代码
  1. tableHeader = new String[]{"""""""""""""",""};   
  2. table = new JTable(tableData, tableHeader);   
  3. table.getTableHeader().setVisible(false);   
  4.   
  5. tableScrollPane.setViewportView(table);   
  6. panel.add(tableScrollPane);  
tableHeader = new String[]{"", "", "", "", "", "", "",""};
table = new JTable(tableData, tableHeader);
table.getTableHeader().setVisible(false);

tableScrollPane.setViewportView(table);
panel.add(tableScrollPane);
 

 

 

3. 为表头设置一个 CellRenderer, 这个 CellRenderer 的预选高度为 0. .

Java代码 复制代码  收藏代码
  1.             
  2. jtb_right_dataList.getTableHeader().setVisible(false);   
  3.             DefaultTableCellRenderer renderer = new DefaultTableCellRenderer();   
  4.             renderer.setPreferredSize(new Dimension(00));   
  5.             jtb_right_dataList.getTableHeader().setDefaultRenderer(renderer);  
         
jtb_right_dataList.getTableHeader().setVisible(false);
            DefaultTableCellRenderer renderer = new DefaultTableCellRenderer();
            renderer.setPreferredSize(new Dimension(0, 0));
            jtb_right_dataList.getTableHeader().setDefaultRenderer(renderer);
 

这是目前我正在用的, 正是我想要的效果.

 


 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值