[英]Using JTable for a JTree cell editor
我想使用 JTable 來編輯 JTree,我擴展了 DefaultTreeCellEditor 並實現了 isCellEditable getTreeCellEditorComponent,在 getTreeCellEditorComponent 中我返回了一個 JTable。 到目前為止,當一個節點被編輯時,一切都正常工作,swing 顯示填充了對象內容的 JTable,但是當編輯完成時,DefaultTreeModel 的 valueForPathChanged 永遠不會被調用。 如果我使用默認的文本字段進行編輯,則一切正常。
JTextField
有一個名為“notify-field-accept”的notifyAction
,通常綁定到KeyEvent.VK_ENTER
,它向CellEditor
發出stopEditing()
信號並最終調用DefaultTreeCellEditor
方法valueForPathChanged()
。
不清楚您如何指示JTable
編輯已完成。 您應該能夠對通過addCellEditorListener()
添加到您的自定義編輯器的CellEditorListener
中的JTextField
執行類似的操作。
順便說一句, valueForPathChanged()
提到“如果您在 TreeModel 中使用自定義用戶對象,您將需要對其進行子類化並將更改節點的用戶對象設置為有意義的內容。”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.