Java CardLayout:是否可以在两张不同的卡上使用相同的对象?

时间:2012-10-24 13:23:23

标签: java swing user-interface cardlayout

我正在创建一个包含地图的程序。对于GUI我使用CardLayout cus我在窗口之间交换。我程序中的一个窗口是较小的地图,另一个是较大的地图。

当我在这两个窗口之间切换时,我想要我刚刚看到的地图上的信息(缩放,航点等)被转移到第二张地图。但我认为最好的方法是这样做(考虑到我需要几千个航路点供我使用(为什么不相关))只是让同一个物体出现在两张卡上。

这可能吗?我只需调整位置和大小,但其他一切(如缩放和航点)将完好无损!

-Thanks很多:)

PS:我正在使用JXMapViewer

1 个答案:

答案 0 :(得分:2)

您应该将模型和视图分开。

创建包含所有信息的自定义模型(缩放,航点等) 创建两个视图 - 面板保持对同一模型对象的引用并具有自己的参数 - 位置和大小。

放入CardLayout两个视图并在必要时进行交换。