java - 激活和停用 ComboBox

标签 java swing combobox checkbox

如何在取消选中复选框时使组合框可用(反之亦然)

为什么取消选中复选框后组合框仍处于禁用状态?

choice [] = {"A","B","C"};
JComboBox a = new JComboBox(choice);

JCheckBox chk = new JCheckBox("choice");

...
a.addActionListener(this);
chk.addActionListener(this);
...

public void actionPerformed(ActionEvent e) {

   //disable the a comboBox when the checkBox chk was checked
  if(e.getSource()==chk)
    a.setEnabled(false);

  //enable the a comboBox when the checkBox chk was unchecked
  else if(e.getSource()!=chk)
    a.setEnabled(true);
}

最佳答案

如果我理解正确的话,我认为您需要做的就是根据复选框的当前值更改组合框的启用状态:

public void actionPerformed(ActionEvent e) {
    if (e.getSource()==chk) {
        a.setEnabled(chk.isSelected());
    } 
}

关于java - 激活和停用 ComboBox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2552520/

相关文章:

wpf - 如何在 WPF 中隐藏组合框的项目

java - JSF 2.0 无法从 primefaces 呈现对话框

java - 如何在JTable中显示某些行

java - 绑定(bind)同一个接口(interface)两次(Guice)

java:开源APM(应用程序性能管理)

java - JFrame 停止接收鼠标事件

java - 单击按钮后如何将数据从 vector 更新到 JTable

c# - 绑定(bind)DataSource时如何防止selectedindexchanged事件?

java - 在 Java 中使用 try/catch 验证电话号码

javascript - 过滤组合框不适用于常见商店组合