2014-04-21 3 views
1

Это то, что делает «новая» кнопка в моей форме ввода, в дополнение к этому, я хочу, чтобы она удаляла все отображаемые данные из JTable. Как я могу это сделать?Удаление отображаемых данных из JTable

saved = false; 
    txt_ipath.setText(null); 
    txt_md_by_p.setText(null); 
    txt_model_p.setText(null); 
    txt_p_date.setText(sdf.format(date)); 
    txt_p_price.setText(null); 
    txt_p_qty.setText(null); 
    txt_s_price_p.setText(null); 
    txt_vouchdate_p.setText(sdf.format(date)); 
    txt_vouchno_p.setText(null); 
+1

Удалить данные из 'TableModel', а' JTable' должен обновляться автоматически. – trashgod

ответ

2

Предполагая, что вы используете DefaultTableModel для JTable вы можете просто использовать:

model.setRowCount(0); 

Или, если вы удаляете строку данных, которые вы можете использовать:

model.removeRow(...); 

любой изменения в данных должны выполняться с помощью модели.

+0

Большое спасибо. :) – Rehan

+0

Я сделал свой объект DefaultTableModel tblModel глобальным и попытался сделать то, что вы предложили, но теперь я получаю NullPointerException. tblModel.setRowCount (0); – Rehan

+0

Тогда, очевидно, глобальная ссылка фактически не ссылается на модель таблицы, используемую таблицей. Я не могу помочь, потому что я не читатель ума, и я не знаю, как выглядит ваш код. Нет необходимости делать модель глобальной переменной. Вы всегда можете получить модель от JTable. – camickr

Смежные вопросы