【发布时间】:2012-10-15 13:29:52
【问题描述】:
我遇到以下问题:我有一个 JTable,它的 on tablemodel 位于 JFrame 上。 tablemodel 使用自己的 hashmap 备份以存储内容。该表有两列,其中右侧是可编辑的。
通常,用户更改右侧的一些值,然后按下回车按钮,该按钮会触发调用我的保存函数的 tabledatachanged 事件。然后可以关闭框架。
但是,有些用户只是简单地编辑单元格,然后他们关闭窗口而不按 Enter,所以我没有机会保存表格。我知道如何在框架即将关闭时编写事件,但我不知道如何在完成编辑的同时检索“未完成”编辑的内容。
我猜它与单元编辑器有关,我什至尝试使用应该返回活动的 table.getCellEditor() 但它返回 null。
感谢您的帮助!
【问题讨论】:
-
我迷路了,请问什么,在哪里,怎么做???
-
问题是 CellEditor、Window 或它们的交互
-
尝试 table.putClientProperty("terminateEditOnFocusLost") 如果这没有帮助,请显示一个 SSCCE 来说明问题
-
问题是我希望我的保存方法在按下按钮/窗口关闭时运行但单元格中有未完成的编辑。我不知道如何正确表达,对不起
-
@kleopatra 我对基于
AbstractTableModel的AbstractTableModel的terminateE...有错误的经验@(HashMape.i.),对于 DefaultTableModel 有效,奇怪(编辑确保 fireXxxXxx 设置正确:-)
标签: java swing user-interface jtable tablemodel