jtable 隐藏表头标题行
今天需要把JTable的表头也就是标题行给隐藏掉,在晚上找了一下主要有以下三种方法:
1. 不放在 JScrollPane 上, 但是需要给表加个边框.
table.setBorder(BorderFactory.createEtchedBorder());
panel.add(table);
2. 放在 JScrollPane 上, 但是把表头隐藏..
table.getTableHeader().setVisible(false);
tableScrollPane.setViewportView(table);
panel.add(tableScrollPane);
缺点: 在本来表头的位置出现一片空白, 难看. 改进: 如果在前面将表头内容全部设为 "", 就可以去掉这片空白, 效果和 3 一样.(http://www.my400800.cn)
tableHeader = new String[]{"", "", "", "", "", "", "",""};
table = new JTable(tableData, tableHeader);
table.getTableHeader().setVisible(false);
tableScrollPane.setViewportView(table);
panel.add(tableScrollPane);
3. 为表头设置一个 CellRenderer, 这个 CellRenderer 的预选高度为 0. .
jtb_right_dataList.getTableHeader().setVisible(false);
DefaultTableCellRenderer renderer = new DefaultTableCellRenderer();
renderer.setPreferredSize(new Dimension(0, 0));
jtb_right_dataList.getTableHeader().setDefaultRenderer(renderer);
这是目前我正在用的, 正是我想要的效果.
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步