我正在编写我的第一个大型多文件Java程序。当程序启动时,我的主文件会调用另一个创建GUI、填充GUI并接受信息的文件。然后它应该返回一个ArrayList
,我的主文件应该使用它。
问题是,我的GUI方法立即返回一个空的ArrayList
,而不是等到按下按钮后再返回。
这就是我的ActionListener
目前的工作方式
close.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
System.exit(0);
}
});
start.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
temp = pullInfo(txtOrder, txtRounds);
}
});
其中temp是我想在最后返回的ArrayList
。
这是我在主文件中的内容:
JFrame launch = new LaunchWindow();
ArrayList<Integer> temp = ((LaunchWindow) launch).createGUI();
rounds = temp.get(0);
temp.remove(0);
order = temp;
connect();
我不希望它在ArrayList
被填充之前运行rounds = temp.get(0);
。我怎样才能让它等到按下按钮?
我最终把@Madhan的答案和我自己的混淆了
我调用主文件中的GUI文件:
JFrame launch = new LaunchWindow();
ArrayList<Integer> temp = ((LaunchWindow) launch).createGUI();
然后更改了我的start.addActionListener方法,只调用其中的下一个方法。
start.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
temp = pullInfo(txtOrder, txtRounds);
int rounds = temp.get(0);
temp.remove(0);
ArrayList<Integer> order = temp;
connect(order, rounds);
}
});