-1

在这里,我在 jtable 中列出了 1-10 行,我想删除/隐藏在 jtable 中列出之前的第 5 行。

我设置了行高,但它影响了单元格选择。有没有办法隐藏/删除行而不影响正常的流程代码?

如果我删除该行,它将抛出 ArrayIndexoutofBoundException。

在我的项目中执行意味着在该 gui 中打开的一个 gui 列出了一些字符串。在这里,我们可以通过弹出按钮上的添加按钮添加更多字符串

这里我需要的是我必须隐藏特定的字符串。该字符串位于第一行。我需要对最终用户隐藏字符串。

现在你希望明白。

4

3 回答 3

3

您可以使用 JTable行过滤支持来隐藏某些行而不将它们从模型中删除。另请参阅:如何过滤 JTable 中的行?

于 2013-10-31T12:42:06.827 回答
0

removeRow()您可以通过调用该方法来消除表中的行。如果您只想隐藏它而不是消除它,您需要自定义 JTable 的模型以满足您对显示内容的规范。

http://docs.oracle.com/javase/tutorial/uiswing/components/table.html

于 2013-10-31T12:40:48.463 回答
0

DefaultTableModel与您一起使用JTable应该能够使用model.removeRow(int row)函数从JTable. based on index据我所知,没有办法隐藏一行。但是,如果您需要隐藏和重新显示机制,则需要在删除之前保存该行并将其保存removedRow在 aArrayList中以重新使用它们。如下所示:

 List<Vector>deletedRows = new ArrayList<>();
 Vector removingRow = (Vector) model.getDataVector().get(5);
 deletedRows.add(removingRow);
 model.removeRow(5); 
于 2013-10-31T13:05:41.243 回答