挥动点击两个按钮

时间:2013-03-20 07:29:24

标签: java swing button compiler-errors listeners

在我的程序中有两个按钮,您必须单击它们才能进行系统打印。我在尝试实现这个目标时遇到了麻烦。

button[0].addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            button[0].setEnabled( false );
            if( button[1].isEnabled( false) );
                System.out.println("you clicked both buttons");
        }
    });
    button[1].addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            button[1].setBackground(Color.YELLOW);
            button[1].setEnabled( false );
            if( buttons[0].isEnabled( false) );
            System.out.println("you clicked both buttons");
        }
    });

我收到了错误:

if( buttons[0].isEnabled( false) );

The method isEnabled() in the type Component is not applicable for the arguments (boolean)

我只是一个初学者,所以如果有人可以帮助或告诉我另一种方法来做这件事会很棒。

3 个答案:

答案 0 :(得分:3)

例外很清楚。 isEnabled()没有参数,因此您应该以这种方式buttons[0].isEnabled()使用它。

答案 1 :(得分:2)

isEnabled不需要参数。

这样做:

if( buttons[0].isEnabled() )

答案 2 :(得分:1)

这是你的答案:

button1.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent arg0) {

        button1.setEnabled(false);
        if (!button1.isEnabled() && !button2.isEnabled()) {
            System.out.println("you clicked both buttons");
        }
    }
});

button2.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {

        button2.setBackground(Color.YELLOW);
        button2.setEnabled(false);
        if (!button2.isEnabled() && !button1.isEnabled()) {
            System.out.println("you clicked both buttons");
        }
    }
});