0
下面是我的代碼的片段。我有一個JTable。我已經擴展了DefaultCellEditor來創建我自己的編輯器。我爲這些單元添加了鍵監聽器和鼠標監聽器。我也有一個JButton。當我點擊JButton時,我想讓JTable中的第一個單元格進入編輯模式。爲此,我使用了requestFocus和editCellAt(0,0)。我已經將這些代碼放在了action中。當通過editCellAt強制編輯單元格時,JTable單元格不會觸發按鍵事件(row,col)
public void actionPerformed(ActionEvent e)
{
System.out.println("action performed");
if(e.getSource().equals(btn))
{
oTable.requestFocus();
oTable.setRowSelectionInterval(0, 0);
oTable.editCellAt(0, 0);
}
}
這將光標置於第一個單元格中。但是當我輸入任何東西時,關鍵事件都不會被解僱!注意:如果我用鼠標單擊單元格然後鍵入,它會觸發按鍵事件。但我不想做這個額外的點擊。
這不僅解決了這個問題,而且還「如何語法編輯細胞或使可用於編輯選定行的單元格?」。解決了我的問題,也:) – instinct