Java JTable进入JScrollPane,不带标题
为什么在我将Java JTable进入JScrollPane,不带标题,java,swing,jtable,jtableheader,Java,Swing,Jtable,Jtableheader,为什么在我将JTable添加到JScrollPane中时会自动出现tableHeader。我想将表格添加到没有标题的滚动窗格中。如何做?请简而言之,你不能(自动完成) 您可以调用JScrollPane#setColumnHeaderView并在将JTable设置到视口后将其传递给null 调用tablesaddNotify方法时,JTable将列标题应用于JScrollPane。调用此函数是为了响应包含表的容器被添加到可显示容器(如可视框架)中 然后调用configureEnclosuringS
JTable
添加到JScrollPane
中时会自动出现tableHeader。我想将表格添加到没有标题的滚动窗格中。如何做?请简而言之,你不能(自动完成)
您可以调用JScrollPane#setColumnHeaderView
并在将JTable
设置到视口后将其传递给null
调用tablesaddNotify
方法时,JTable
将列标题应用于JScrollPane
。调用此函数是为了响应包含表的容器被添加到可显示容器(如可视框架)中
然后调用configureEnclosuringScrollPane
已更新
上述代码假设已将JScrollPane
和JTable
添加到已可显示的容器中,但情况可能并非总是如此。或者,您可以覆盖JTable#configureEnclosuringsCrollPane
方法,并在需要时配置标题
@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)代码>在您的上一个问题中,有人要求提供一个。你应该用一个来编辑你的帖子,有人会重新打开你的问题,而不是用更少的信息发布另一个问题。不知道你在期待什么。正如其他人所说,您提供的代码不会导致NPE,这就是为什么我们需要可运行的代码来测试它;工作方式与JScrollPane.setColumnHeaderView(null)相同;不知道您的案例中为什么会有NPE,请确定JTable initializeduse JTable.setTableHeader(null);只是,由于某些原因,人们关闭了他的另一个问题(),我重新打开了这个问题;