繁体   English   中英

复选框侦听器错误

[英]Checkbox Listener error

当我检查我的Checkbox是否处于选中状态时,功能isSelected()不起作用。

我遇到了这个错误: the method isSelected() is undefined for the type Checkbox ,我不知道为什么。

您能否解释一下问题出在哪里,或者告诉我是否还有其他解决方案来检查是否选中了我的Checkbox

码:

import javax.swing.*;
import java.awt.event.*;

public class Example extends JFrame{
    public JCheckBox one;

    public Example() {
        one = new JCheckBox("CT scan performed");
        one.addItemListener(new CheckBoxListener());
        setSize(300,300);
        getContentPane().add(one);
        setVisible(true);
    }

    private class CheckBoxListener implements ItemListener{
        public void itemStateChanged(ItemEvent e) {
            if(e.getSource()==one){
                if(one.isSelected()) {
                    System.out.println("one has been selected");
                } else {System.out.println("nothing");}
            }
        }
    }

    public static void main(String[] args) {
        new Example();
    }
}

您的代码会为我编译,因此其他地方可能会出错。 我自己,但是,我会使用ItemEvent状态。 例如:

private class CheckBoxListener implements ItemListener {
  public void itemStateChanged(ItemEvent e) {
     if (e.getStateChange() == ItemEvent.SELECTED) {
        System.out.println("one has been selected");
     } else {
        System.out.println("nothing");
     }
  }
}

编辑
您的错误确实"the method isSelected() is undefined for the type Checkbox"吗? 如果是这样,您是将one一个声明为CheckBox变量还是JCheckBox变量? 还是您还有另一个叫做Checkbox类(请注意小写的b )?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM