java:如何将变量从起始 JFrame 传递到最后一个 JFrame,而不必将其传递到所有 JFrame?

标签 java eclipse swing jframe

我有这个问题:我有一个 ArrayList,其中包含一些我想在特定框架中使用的项目,问题是数组列表通过在主类中初始化而变满我的项目。在本类(class)中,我还启动了与其他框架链接的起始框架(登录框架 -> 中间框架 -> 最后一个框架)。我想携带这个 ArrayList ,而不必在所有帧中携带它,并从 main --> 最后一帧直接使用它。我怎样才能做到这一点?

编辑

我做了什么,就像第一帧以这个 ArrayList 作为参数开始:

Jframe jf = new LoginFrame(arraylistvariable,"Login Window");           

然后,在创建新框架、处理旧框架的按钮上的所有 ActionListener 调用中,我将其设置为:

Jframe jo = new MiddleFrame(arraylistvariable,"Middle Window");

在整个框架中传递此变量,但我希望它只能由需要此变量的框架调用,因为登录框架不需要此变量。但需要通过登录框来启动程序。

最佳答案

"However, it is necessary to start the program by the login frame."

不,不是。

public class MiddleFrame() {
    private LoginFrame;
}

...
public static void main(String[] args){
    new MiddleFrame();
}

使中间框架在实例化时不可见,但使 LoginFrame 可见。如果登录成功,但使MiddleFrame可见。

注意您不需要使用很多框架。利用JDialogs。请参阅 How to make a Login with a JDialog 的答案

关于java:如何将变量从起始 JFrame 传递到最后一个 JFrame,而不必将其传递到所有 JFrame?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21387777/

相关文章:

java - 读取二进制TCP数据: the correct stream type

java - 如何绕过 `||`的快捷方式

java - 监听 JTabbedPane 面板上的选项卡开关

java - 在 JPanel 中的每个元素周围添加边框

java - 如何了解 Swing 击键处理的内部原理

Java 1.6 - 从执行程序服务线程返回主类

java - 如何从存储过程中仅获取选定的表?

android - 从 url 保存图像

java - 使用 JAR 1.6 打包仅限 Java 1.7+ 的类

java - 无法正确查看 JFace 对话框中的小部件