如何避免拖动手势冲突

时间:2012-01-14 12:15:33

标签: java swing drag-and-drop observer-pattern

我正在使用Swing GUI开发Java游戏。基本上我将JScrollPane类子类化,并通过拖动鼠标使其可滚动(DragableScrollPane = DSP)。 DSP的视图设置为子类JPanel(BoardView = BV)。

  • 我有一个MouseAdapter子类在DSP上监听鼠标事件,以捕获mouseDragged手势==>平移滚动窗格

  • 我有一个DragGestureListener实现监听BV上的鼠标事件,以捕获dragGestureRecognized手势==>要识别拖动游戏牌的时间,可将其放置在棋盘上的其他位置。

问题: BV中的dragGestureRecognized事件会覆盖DSP中的mouseDragged事件。当用户拖动游戏磁贴时,这很好,但当他/她点击并拖动其他地方时,我希望触发mouseDragged事件而不是平移视图。

感谢阅读!

0 个答案:

没有答案