我有这个问题:我有一个ArrayList
,其中包含一些我想在特定框架中使用的项目,问题是数组列表通过在项目的主类中初始化来填满。在这个课程中,我还启动了与其他帧链接的起始帧(登录帧 - >中间帧 - >最后一帧)。我想要携带这个ArrayList
,而不必通过所有帧继续它,并让它直接从主要使用 - >最后一帧。我怎么能这样做?
编辑
Wat我做的就像第一帧开始时以ArrayList
为参数:
Jframe jf = new LoginFrame(arraylistvariable,"Login Window");
然后在创建新框架的按钮的所有ActionListener
调用中,处理旧框架,我将它设置为:
Jframe jo = new MiddleFrame(arraylistvariable,"Middle Window");
在整个帧中传递这个变量,但是我希望这只是由需要它的帧调用,因为登录帧不需要这个变量。但是,必须通过登录框启动程序。
答案 0 :(得分:1)
“但是,必须通过登录框架启动程序。”
不,不是。
public class MiddleFrame() {
private LoginFrame;
}
...
public static void main(String[] args){
new MiddleFrame();
}
在实例化时使中间框架不可见,但使LoginFrame
可见。如果登录是successfful,但是MiddleFrame
可见。
注意您不需要使用多帧。利用JDialogs
。请参阅How to make a Login with a JDialog
答案 1 :(得分:0)
从最简单的方式传递它/它们通过system properties
答案 2 :(得分:0)
您可能希望创建一些类ArrayListVariableProviderService
,并使其可以访问所有类(JFrame)或通过静态调用。
这可以作为许多事物的容器,但它会消除所有特性。
祝你好运。