启用/禁用JButton与某些方法相关联

时间:2013-10-10 08:45:56

标签: java swing jbutton

我想在某个方法返回JButton / true时启用/禁用某个类中的false(类的方法返回组件 - 类型boolean

我不知道该怎么做。我应该编写指令while(true) { ... }并检查返回的方法,例如每秒返回1个?这是个好主意吗?

请帮忙

3 个答案:

答案 0 :(得分:1)

enter image description here

来自Java Se 7 Doc,

Methods inherited from class javax.swing.AbstractButton

如果您将此代码放在方法中,那么无论何时运行,它都会相应地启用/禁用该按钮。

答案 1 :(得分:1)

  

我应该在(真){...}时写指令并检查方法   返回例如每秒1?这是个好主意吗?

这是个坏主意,它会完全冻结你的应用程序! 如果要检查布尔方法的值,请定期使用Timer。

但是如果在对象A中定义了布尔方法,并且你知道A何时被修改,那么你应该将按钮添加为A的监听器,这样当A被修改时,它可以触发Button中的回调,它将评估是否应立即启用或禁用按钮。

答案 2 :(得分:0)

final JButton btnNewButton = new JButton("New button");
btnNewButton.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent arg0) {
        btnNewButton.setEnabled(buttonState());
    }
});

boolean buttonState() {
    return false;
}