raz*_*han 3 java swing jbutton jcheckbox
我在JFrame上有一个复选框.当我检查它时,我想在命令窗口中显示它已被选中.以下是我正在使用的代码.它编译并执行没有错误,但是当我选中复选框时,我没有在窗口中看到"已经选择了一个".
public Checklist() {
...
JCheckBox one = new JCheckBox("CT scan performed");
one.addItemListener(new CheckBoxListener());
}
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");}
}
}}
Run Code Online (Sandbox Code Playgroud)
我已经测试了这个简单的例子并且它完美地工作("one has been selected"当你选择复选框时,"nothing"它会在你取消选择时写入):
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();
}
}
Run Code Online (Sandbox Code Playgroud)
在您的示例中,它似乎one在构造函数中声明CheckList().你确定它可以在内部类中访问CheckBoxListener吗?
| 归档时间: |
|
| 查看次数: |
25150 次 |
| 最近记录: |