如何根据另一个复选框禁用Checkbox?

时间:2011-03-10 21:31:40

标签: java swing jcheckbox

在Java上,如果选中复选框A,有没有办法禁用复选框(称之为B)。

当我说禁用时,用户无法检查它..它是setEditable(false)还是什么的。

4 个答案:

答案 0 :(得分:6)

JCheckBox.setEnabled(false)

这里显示的是一个完整的副本:How to Use Buttons, Check Boxes, and Radio Buttons

答案 1 :(得分:4)

这样的东西?

 final JCheckBox a = new JCheckBox();
 final JCheckBox b = new JCheckBox();
 a.addItemListener(new ItemListener() {
  @Override
  public void itemStateChanged(ItemEvent e) {
    if(e.getStateChange() == ItemEvent.SELECTED){
      b.setEnabled(a.isSelected());
    }
  }
 });

答案 2 :(得分:2)

yourCheckBox.setEnabled(假);

答案 3 :(得分:2)

或者您可以使用ButtonGroup:

JCheckBox chkA = new JCheckBox();
JCheckBox chkB = new JCheckBox();
ButtonGroup group = new ButtonGroup();
group.add(chkA);
group.add(chkB);