0

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

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

请帮忙

4

3 回答 3

1

在此处输入图像描述

来自 Java Se 7 文档,

Methods inherited from class javax.swing.AbstractButton

如果您将此代码放在您的方法中,那么每当它运行时,它将相应地启用/禁用按钮。

于 2013-10-10T08:51:56.630 回答
1

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

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

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

于 2013-10-10T11:31:52.970 回答
0
final JButton btnNewButton = new JButton("New button");
btnNewButton.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent arg0) {
        btnNewButton.setEnabled(buttonState());
    }
});

boolean buttonState() {
    return false;
}
于 2013-10-10T08:55:30.557 回答