JScrollBar不应该触发事件来实现Videobar

时间:2012-08-29 12:45:06

标签: java swing events listener jscrollbar

我尝试实现视频栏。这意味着我有一个视频,在视频运行期间,JScrollbar的旋钮应根据活动视频帧移动。我还希望使用此栏作为用户输入来移动到视频中的某个帧。

到目前为止,有一个线程可以轮询活动图像和活动帧编号。将显示图像,并将JScrollbar设置为表示框架的位置。这很好用。 (顺便说一下,我知道民意调查并不好,但由于内部愚蠢的库,我必须这样做。)

现在我为用户交互添加AdjustmentListener。每次用户拖动JScrollBar的旋钮时,我都会重置视频的位置。它也有效。但问题是每当用户拖动旋钮时调用AdjustmentListener,而且当VideoImagePollingThread设置旋钮时调用。所以我打电话太多了。

我无法区分用户事件和VideoImagePollingThread事件。

我尝试构建自己的JScrollBar的sublcass并覆盖

void fireAdjustmentValueChanged(int id, int type, int value).

所以我不会在视频线程中引发事件。 但这不起作用,因为还有另一种方法

void fireAdjustmentValueChanged(int id, int type, int value, boolean isAdjusting),

是私有的,所以我无法覆盖它。

我认为这是常见问题,因此必须有一个理想的解决方案。

有什么建议吗?提前谢谢。

0 个答案:

没有答案