1

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

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)

我只是这方面的初学者,所以如果有人可以帮助或告诉我另一种方法来做到这一点,那就太好了。

4

3 回答 3

3

异常非常明显。isEnabled()没有参数,所以你应该以这种方式使用它buttons[0].isEnabled()

于 2013-03-20T07:35:07.330 回答
2

isEnabled不需要参数。

做这个:

if( buttons[0].isEnabled() )
于 2013-03-20T07:36:30.847 回答
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");
        }
    }
});
于 2013-03-20T07:40:20.330 回答