2011-03-11 60 views
0

假设我有一个有10行的JTable,并且如果我双击一行,那行应该消失,并且应该在整行中插入一个新的JTable。我试图插入所需的行数,而我除去通过调用我们如何将JTable添加到另一个JTable?

((DefaultTableModel)table.getModel()).getDataVector().removeElementAt(row+insertedNumberOfRows) 

是否有任何其他的方式做添加一个JTable作为整行的组件选择的行?

+0

这听起来像一个不寻常的要求。你能证明你为什么要这样做,因为如果我们对问题有更好的理解,可能有更好的方法来解决你的问题。 – 2011-03-11 20:33:02

+0

是的,这是非常不寻常的要求。实际表格包含抽象数据,如果用户想要详细说明单行信息,请单击一行。然后在两行之间显示新的表格。再一次,如果用户点击新表,新表将消失,并应显示上一行......它就像一棵树...... – 2011-03-15 05:28:34

回答

0

您不能在另一个JTable内添加JTable。如果要在单击父(主)表的一行时显示新的子表(详细信息),请双击该单元中的双击,然后从收集器面板中删除JTable,使用新的行显示并添加到容器面板。当您移除并活跃地添加组件时,请小心pack()validate()