对jbutton press采取行动

时间:2014-07-15 04:27:16

标签: java windows swing user-interface jbutton

我无法弄清楚如何使以下代码正常工作。按下jbutton时,我希望它运行以下代码。我的问题是ArrayList列表位于main中,我不知道如何将它传递给GUI构建器提供给我的这个方法,这样,actionperformed方法将知道列表是什么并返回一个ArrayList主要是用新的变化取而代之。

btnNewButton.addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent e) {

            Student temp;

            Picker pick = new Picker(list);
            temp = pick.randomNoReplace();  //replace randomNoReplace() with radio button choice
            list.remove(temp);              //the next line must be temp.increaseScore() or temp.decreaseScore() or neither

            list.add(temp);
        }
}

1 个答案:

答案 0 :(得分:0)

您正在寻找的是这样的:

class Foo {
    private ArrayList<Student> list;
    ...

这会将列表声明为Student的ArrayList作为实例变量,以便此类的每个对象都可以从任何实例方法访问list。请务必在使用之前实例化列表,最好在构造函数中执行以下操作:

list = new ArrayList<Student>();