[英]JTable into JScrollPane, without Header
当我将JTable
添加到JScrollPane
时,为什么会自动出现tableHeader。 我想将表添加到没有标题的scrollPane中。 怎么做? 请
简短的答案是,您不能(自动执行)。
您可以做的是调用JScrollPane#setColumnHeaderView
并将JTable
设置为视口后将其传递为null
。
调用表的addNotify
方法时, JTable
将列标题应用于JScrollPane
。 响应于将包含表的容器添加到可显示容器(如可见框架)而调用此方法。
然后调用configureEnclosingScrollPane
更新
上面的代码假定JScrollPane
和JTable
已被添加到已经可以显示的容器中,但情况并非总是如此。 或者,您可以重写JTable#configureEnclosingScrollPane
方法,并在需要时将标头配置为...
@Override
protected void configureEnclosingScrollPane() {
if (showHeaders) {
super.configureEnclosingScrollPane();
}
}
现在个人而言,我将创建自己的自定义JTable
,它具有showColumnHeaders
属性,可用于根据需要切换标题的打开和关闭...
尝试下一个代码:
JTable t = new JTable(3,3);
JScrollPane jScrollPane = new JScrollPane(t);
t.setTableHeader(null);
jScrollPane.setColumnHeaderView(null);
或者只是将tableHeader设置为null对我t.setTableHeader(null);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.