把JTable的表头也就是标题行给隐藏掉

来源:互联网 发布:域名注册量查询 编辑:程序博客网 时间:2024/05/21 17:36

主要有以下三种方法:

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

[java] view plain copy
print?
  1. table.setBorder(BorderFactory.createEtchedBorder());  
  2.   
  3. panel.add(table);  
 

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

[java] view plain copy
print?
  1. table.getTableHeader().setVisible(false);  
  2.   
  3. tableScrollPane.setViewportView(table);  
  4. panel.add(tableScrollPane);  

 

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

[java] view plain copy
print?
  1. tableHeader = new String[]{"""""""""""""",""};  
  2. table = new JTable(tableData, tableHeader);  
  3. table.getTableHeader().setVisible(false);  
  4.   
  5. tableScrollPane.setViewportView(table);  
  6. panel.add(tableScrollPane);  
 

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

[java] view plain copy
print?
  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);  
 

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

0 0
原创粉丝点击