JavaFX大数据小变更事件通知

时间:2018-02-09 11:41:25

标签: events javafx notifications

我有一个由 NIO 缓冲区支持的 MyImage 类。我有一个 MyHistogram 类,通过遍历MyImage像素数据来获取其数据。我还有一个 MyHistogramView 类,它是一个JavaFX StackedAreaChart<Integer, Integer>,它是MyHistogram的视图。

目前我的MyHistogramView有ObjectProperty<MyHistogram> imageHistogram 。 MyHistogramView为imageHistogram属性添加了一个监听器,因此只要替换整个MyHistogram,就会重新呈现MyHistogramView。类似地,MyHistogram有一个MyImage属性和监听器,每当MyImage属性发生变化时,都会重新计算MyHistogram。

然而,这意味着当我只能更改图像中的几个像素时,我必须创建一个全新的图像来触发直方图和直方图视图的更新。

我想要一个有效的策略,我可以将一个或多个像素改为一个MyImage,然后触发重新计算MyHistogram和MyHistogramView,而不必重新创建任何这些项目。

一种想法是有一个整数“修订版”整数属性,在每批像素改变操作后会被碰撞。 MyHistogram等感兴趣的人可以收听此信息并在修订属性更改时执行重新计算。这感觉就像破坏了原有的FX属性设计。

感激地接受任何想法!

1 个答案:

答案 0 :(得分:0)

我需要从Observable中对Observer进行子类化并实施java.util。杜!