我使用CardLayout并希望使用两个带有.next()和.previous()的按钮来滚动项目。它只有一个问题很好用:如果当前项目是第一个/最后一个项目,我想停止滚动。
我找不到一个方法来获取当前项目的索引或一个标志,以找出当前项目是第一个/最后一个或不是。
你能告诉我一个简单的方法来确定当前项目是第一个/最后一个吗?
由于有跳转方法.first()和.last(),我猜测必须有一种方法来确定当前是第一个还是最后一个。
答案 0 :(得分:3)
我只想使用包含卡布局中所有组件名称的List<String>
,以及包含当前显示组件索引的字段。
要知道你是否刚开始,你会测试index == 0
。要知道您是否在最后一个组件,您将测试是否index == list.size() - 1
。要显示下一个组件,请使用index++; layout.show(parent, list.get(index));
。
答案 1 :(得分:2)
我扩展了CardLayout,覆盖了几种方法
这也是我的解决方案。有关我的实施,请参阅Card Layout Focus。