我想创建一个在JFrame
之间切换的JPanels
,但其结构比CardLayout
似乎提供的链接列表更复杂。有没有提供更多基于有向图的布局的东西?
以下是我想到的情景:
---------------------------- -> ---------------
| Select User / New User Btn | | New User Form |
---------------------------- <- ---------------
|
V
--------
| Form 1 |
--------
|
V
-------- --------------
| Form 2 | -> | Results Page |
-------- --------------
正如您所看到的,这不是链接列表,而是有向图。有没有一种标准的方法来处理这种情况?
答案 0 :(得分:3)
我想创建一个在多个JPanel之间切换的JFrame,但其结构比CardLayout似乎提供的链表更复杂
您不必以线性顺序查看CardLayout中的面板。
您可以使用show(...)
方法指定要显示的面板名称,以显示您想要的任何面板。请查看How to Use Card Layout上Swing教程中的示例,了解使用此方法的工作示例。
答案 1 :(得分:2)
CardLayout
只提供卡片,由您自行决定哪张卡片可见。它为方便起见提供了一些有序列表样式的API方法(可能是因为设计人员认为这是更常见的用例之一),但您不必使用它们。
在按钮中实现流控制(或者在您使用的任何代码中确定行为),然后使用CardLayout.show()
显示相应的卡片。如果您不愿意,则
first()
,last()
和previous()
。