6

如何在 UI 中编辑数据时警告用户,以便在他们从其他来源加载或提示他们保存时警告他们覆盖?(JavaFX2.2)

我将在多个选项卡和 2 或 3 个带有按钮的表格中包含 50 多个文本字段,以添加和删除行。

我想知道是否有一个全局“isDirty”布尔标志并且可以在按钮上设置 onAction 处理程序,但我必须在每个文本字段和文本区域上设置onKeyTyped处理程序吗?(它会减慢速度吗?)。Java 是否会跟踪是否编辑了任何字段,如果是,我可以从中捕获该信息吗?

4

1 回答 1

0

一个可能干净的解决方案是拥有一种 MyWholeDataset 类,该类在 UI 启动时填充数据,以及另一个用于实际 UI 显示的“克隆”对象。然后,每次用户从 UI 更改数据时,您都会更改第二个对象(克隆的对象)。最后,您应该实现 Comparable 接口。这告诉您存在差异,然后您可以使用某种“getDeltas”方法,该方法返回一组不同的字段名称或返回字段名称作为键的 hasmap 和包含旧/新的对象值对作为值。

于 2013-01-28T21:52:44.900 回答