0
在我的JTable中添加新行時,會自動選擇一個「JTextString」單元格進行編輯。如果在單元格中輸入的新值未通過驗證,則應刪除此新行。如何在刪除JTable中的一行後停止編輯單元格
在我DefacultCellEditor比如我有:
@Override
public boolean stopCellEditing(){
/* do something */
if (/* failed validation */) {
super.stopCellEditing();
myTable.getSelectionModel().clearSelection();
myTable.removeLastRow();
return true;
}
....
}
其實當驗證失敗,最後一行被刪除:
model.removeRow(model.getRowCount() - 1);
但是上面列在同一細胞是編輯。我如何停止編輯並取消所有行的選擇?
讓一位編輯改變目標是錯誤的:它的目的是_notify_準備就緒,沒有別的。相反,讓它報告任何驗證錯誤(至少在stopEditing上返回false,或者激發自定義信號)),並讓調用方(或另一個監聽器)根據需要處理任何邏輯 – kleopatra 2011-12-25 12:41:21