CardLayout:找出当前项目是列表中的第一个/最后一个

时间:2013-04-05 09:59:15

标签: java swing cardlayout

我使用CardLayout并希望使用两个带有.next()和.previous()的按钮来滚动项目。它只有一个问题很好用:如果当前项目是第一个/最后一个项目,我想停止滚动。

我找不到一个方法来获取当前项目的索引或一个标志,以找出当前项目是第一个/最后一个或不是。

你能告诉我一个简单的方法来确定当前项目是第一个/最后一个吗?

由于有跳转方法.first()和.last(),我猜测必须有一种方法来确定当前是第一个还是最后一个。

2 个答案:

答案 0 :(得分:3)

我只想使用包含卡布局中所有组件名称的List<String>,以及包含当前显示组件索引的字段。

要知道你是否刚开始,你会测试index == 0。要知道您是否在最后一个组件,您将测试是否index == list.size() - 1。要显示下一个组件,请使用index++; layout.show(parent, list.get(index));

答案 1 :(得分:2)

  

我扩展了CardLayout,覆盖了几种方法

这也是我的解决方案。有关我的实施,请参阅Card Layout Focus