CardLayout - How to Delete current card (Java Swing)
如果查看
很遗憾,
查看Card Layout Focus以获取扩展
您将使用
然后,一旦获得当前显示的卡片,就可以使用
您将只使用以下类:
1 2 | //final CardLayout cardLayout = new CardLayout(); final RXCardLayout cardLayout = new RXCardLayout(); |
"删除"按钮的逻辑为:
1 | cardPanel.remove(cardLayout.getCurrentCard()); |
当您说索引(5个面板的第3个面板)时,您的意思是插入组件时的组件名称(字符串),对吗?我不知道执行此操作的任何优雅方法,但是您可以尝试获取此容器中的所有组件(parentComponent),并尝试查找与索引名称相同的组件。例如:
1 2 3 4 5 6 7 | Component[] components = parentComponent.getComponents(); for(int i = 0; i < components.length; i++) { if(components[i].getName().equals(index)) { cardLayout.removeLayoutComponent(components[i]); } } |