簡體   English   中英

JTable自定義單元格渲染器焦點問題

[英]JTable custom cell renderer focus problem

我有一張這樣的桌子。 第二列使用JTextField渲染器,第三列使用基於JPasswordField的渲染器和編輯器。

在此輸入圖像描述

看起來不錯。 但問題是我們必須輸入值並且必須點擊“ENTER”。 在該圖像中,我輸入了密碼,但未按Enter鍵。 因此,如果我單擊“保存並關閉”按鈕,它將顯示密碼字段為空的錯誤。

以前我在JTabbedPane下只使用了JTextFields和JPasswordFields,效果很好。 當我不得不添加越來越多的東西時,我把它改成了這樣的表格。

現在我已經貼了一個標簽讓人們知道他們應該點擊進入..這不太好。 另一個大問題。 在Nimbus的Atleast外觀和感覺,我們得知這個領域仍然是焦點。 在Windows系統外觀中,無論字段是否聚焦,都沒有太多明顯的區別。

在此輸入圖像描述

當我點擊“保存並關閉”按鈕時,我需要用戶名字段或密碼字段來設置它的值。 請幫我。

所以你的問題是,你還在編輯單元格。 因此,您必須停止編輯,然后更改單元格。

在您的按鈕上,您可以獲取正在編輯的單元格
TableCellEditor cellEditor = table.getCellEditor();
然后你可以停止編輯
if(cellEditor!=null){
cellEditor.stopCellEditing();
}

然后你可以保存價值

告訴表在失去焦點時自動提交:

table.putClientProperty("terminateEditOnFocusLost", Boolean.TRUE);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM