对这几个Checkbox加上MouseAdapter,通过事件控制一下,我没试,不知可否.AC.setState(false);根本没作用.

解决方案 »

  1.   

    你的问题我也不懂,我有个问题:
       好像这几句不起作用add(AA,BorderLayout.WEST);
    add(AB,BorderLayout.CENTER);
    add(AC,BorderLayout.EAST);
    add(no,BorderLayout.SOUTH);
    checkbox 和button并没有按你想要的方式排列?是不是没有setLayout(new BorderLayout())?
    如果是应该怎么添加上去?我只知道在appplication中是这样
    Frame f=new Frame("example");
    f.setBounds(0,0,300,300);
    f.setLayout(new BorderLayout());
    ..............
      

  2.   

    关于BorderLayout的问题不是主要的,实在不行,可以用swing来作
    可是为什么在applet中MouseAdapter对checkbox 不起作用呢而对TextField是可以的啊我试过的,就是checkbox 不行真是搞不懂!
    请高手出山啊
      

  3.   

    你这个没错,我又看了一边,如果你这么写:
    public class testA extends Applet
    {
    CheckboxGroup cg1=new CheckboxGroup();
    Checkbox AA=new Checkbox("a",cg1,false);
    Checkbox AB=new Checkbox("b",cg1,false);
    Checkbox AC=new Checkbox("c",cg1,false);
    Button no=new Button("restart?");
    public void init()
    {
    no.addMouseListener(new no_Listener());
    add(AA,BorderLayout.WEST);
    add(AB,BorderLayout.CENTER);
    add(AC,BorderLayout.EAST);
    add(no,BorderLayout.SOUTH);
    }

    class no_Listener extends MouseAdapter
    {
    public void mouseClicked(MouseEvent e)
    {
    AA.setState(true);
    //这儿如果全设false逻辑上通不过
    }
    }
    }
    这样看事件是可以激发的.
      

  4.   

    你在运行一下,呵呵,先选定别的checkbox,在激发MouseAdapter事件,你的设计是对的
      

  5.   

    class no_Listener extends MouseAdapter
    {
    public void mouseClicked(MouseEvent e)
    {
    AA.setState(true);
    //这儿如果全设false逻辑上通不过
    }
    }嗯
    可是如果用这段代码做出一个选择题的例子,
    总不见得在每次restart后都在一个答案上选一下把,
      

  6.   

    试一下我的
    我想对于同一组里面必须要有一个是真的才能符合它的所谓的单选阿
    如果非得全部置空,那么可以这样做
    将其中一个隐藏掉
    针对你这里我添加了一个单选框AD,对重置就设置AD为真其他为假
    那么在显示窗口上就满足你的要求了
    对于以后的代码处理无需理会AD就可以了import java.awt.*;
    import java.awt.event.*;
    import java.applet.Applet;
    import java.applet.*;public class test extends Applet
    {
    CheckboxGroup cg1=new CheckboxGroup();
    Checkbox AA=new Checkbox("a",cg1,false);
    Checkbox AB=new Checkbox("b",cg1,false);
    Checkbox AC=new Checkbox("c",cg1,false);
    Checkbox AD=new Checkbox("d",cg1,true);
    Button no=new Button("restart?");
    public void init()
    {
    no.addMouseListener(new no_Listener());
    add(AA,BorderLayout.WEST);
    add(AB,BorderLayout.CENTER);
    add(AC,BorderLayout.EAST);
    add(no,BorderLayout.SOUTH);
                      //此处不添加AD
    }

    class no_Listener extends MouseAdapter
    {
    public void mouseClicked(MouseEvent e)
    {
    AD.setState(true);
                               //雕虫小技在此处
    AA.setState(false);            
    AB.setState(false);
    AC.setState(false);
    }
    }
    }
      

  7.   

    还有一点,就是我怎么在内隐类中实现对选择是否正确的判断,我曾经用过aa.getState()可是怎么也过不了编译,各位,再帮帮我吧
      

  8.   

    to:coolzd(核电浪子) 
    是我要作一个选择题在按钮的内隐类中要实现对a.b.c三个按钮的选择判断是否正确比如,正确答案是a我要对a的checkbox进行判断是否为选中状态以此来判断答案是否正确,从而加分.
      

  9.   

    public void mouseClicked(MouseEvent e)
    {
    AA.setState(false);
    AB.setState(true);
    AC.setState(false);
                            System.out.println(AB.getState());
    }
    我试的可以啊。你把你的原代码放上来?
      

  10.   

    这样写吧
    试一下看看,符合你的要求吗?
    import java.awt.*;
    import java.awt.event.*;
    import java.applet.Applet;
    import java.applet.*;public class test extends Applet
    {
    CheckboxGroup cg1=new CheckboxGroup();
    Checkbox AA=new Checkbox("a",cg1,false);
    Checkbox AB=new Checkbox("b",cg1,false);
    Checkbox AC=new Checkbox("c",cg1,false);
    Checkbox AD=new Checkbox("d",cg1,true);
    Button no=new Button("restart?");
    Button check=new Button("submit");
    Label theanswer=new Label("这里将给你答案的正确与否");
    public void init()
    {
    no.addMouseListener(new no_Listener());
    check.addMouseListener(new check_Listener());
    add(AA);
    add(AB);
    add(AC);
    add(no);
    add(check);
    add(theanswer);
    //        add(AD,BorderLayout.NORTH);
    }

    class no_Listener extends MouseAdapter
    {
    public void mouseClicked(MouseEvent e)
    {
    AD.setState(true);
    AA.setState(false);            
    AB.setState(false);
    AC.setState(false);
    }
    }
    class check_Listener extends MouseAdapter
    {
    public void mouseClicked(MouseEvent e)
    {
    if(AA.getState()==true) {theanswer.setText("您的答案正确");repaint();}
    else if(AB.getState()==true){theanswer.setText("您的答案错误,选B不是最好的");repaint();}
    else if(AC.getState()==true){theanswer.setText("怎么会选C呢?");repaint();}
    else if(AD.getState()==true){theanswer.setText("小伙子您还没有选呢!");repaint();}
      }
    }
    }
      

  11.   

    哈哈,其实我的想法没错,只是一个笔误:AC.getState()==true
    我把它写成了AC.getState()=true,所以老是报错,呵呵真不应该啊
    不过
    还是谢谢你的帮助!