Java 我应该如何使用MouseMovementListeners链接两个项目?
我正在开发一个程序,该程序将显示同一组项目的两个“视图”。因此,我需要进行一些设置,以便在更改自顶向下视图时,侧视图也会更新(反之亦然) 以下是相关代码的简要概述,您可以了解到目前为止我的结构:Java 我应该如何使用MouseMovementListeners链接两个项目?,java,swing,awt,mouseevent,mousemove,Java,Swing,Awt,Mouseevent,Mousemove,我正在开发一个程序,该程序将显示同一组项目的两个“视图”。因此,我需要进行一些设置,以便在更改自顶向下视图时,侧视图也会更新(反之亦然) 以下是相关代码的简要概述,您可以了解到目前为止我的结构: public class DraggableComponent extends JComponent { //Contains code for MouseMovementListener that makes the item draggable } public class ItemGra
public class DraggableComponent extends JComponent
{
//Contains code for MouseMovementListener that makes the item draggable
}
public class ItemGraphic extends DraggableComponent
{
//Code to render the graphic
}
public class Item
{
private ItemGraphic topGraphic;
private ItemGraphic sideGraphic;
}
我可以让每个图形在GUI中显示良好。我还可以独立拖动每个图形。我错过了“链接”
我一直在思考的一些想法:
- 为整个GUI提供一个侦听器。循环检查每个项目,如果 光标位于任一图形的边界内,请移动另一个图形 图解的我担心这种方法的效率
- 多个“配对”侦听器(不太确定这将如何 工作,但想法是每个图形都有一个侦听器,用于另一对图形)
我们使用类似的技术链接两个滚动窗格我建议您需要某种中间模型,这两个组件可以共享和监视 其思想是,当您在视图上更新/更改时,它会使用所需的值更新模型。通过监听器接口通知所有其他相关方更改并相应地更新他们自己 我们使用类似的技术链接两个滚动窗格