如何清除JTable

Cha*_*mal 56 java swing

如何使用Java清除JTable的内容..

use*_*421 68

您必须从TableModel用于表的数据中删除数据.

如果使用DefaultTableModel,只需将行计数设置为零.这将删除行并触发TableModelEvent以更新GUI.

JTable table;
…
DefaultTableModel model = (DefaultTableModel) table.getModel();
model.setRowCount(0);

如果您使用其他TableModel,请查看文档.


Rob*_*ers 19

基本上,它取决于您用于JTable的TableModel.如果您正在使用,DefaultTableModel那么您可以通过两种方式实现:

DefaultTableModel dm = (DefaultTableModel)table.getModel();
dm.getDataVector().removeAllElements();
dm.fireTableDataChanged(); // notifies the JTable that the model has changed
Run Code Online (Sandbox Code Playgroud)

要么

DefaultTableModel dm = (DefaultTableModel)table.getModel();
while(dm.getRowCount() > 0)
{
    dm.removeRow(0);
}
Run Code Online (Sandbox Code Playgroud)

有关更多详细信息,请参阅DefaultTableModel的JavaDoc

  • 如果更改基础数据向量,请记住触发表事件 - 否则JTable将不知道它已更改... (3认同)

Bla*_*erg 6

我必须得到没有列的干净的桌子.我做了以下事情:

jMyTable.setModel(new DefaultTableModel());
Run Code Online (Sandbox Code Playgroud)