hyt_ao 2015-11-27 12:08 采纳率: 41.2%
浏览 1488

代码错在哪了,为什么两个Button都不起作用

public class User extends Frame implements ActionListener{
Label name=new Label("用户名:");
Label paseword=new Label("密 码:");
TextField nameTextField=new TextField(10);
TextField pasewordTextField=new TextField(10);
Button submit=new Button("提交");
Button reset=new Button("重置");
User(){
pasewordTextField.setEchoChar('*');
Panel panel1=new Panel();
Panel panel2=new Panel();
Panel panel3=new Panel();

     panel1.add(name);
     panel1.add(nameTextField);

     panel2.add(paseword);
     panel2.add(pasewordTextField);

     panel3.add(submit);
     panel3.add(reset);

     nameTextField.addActionListener(this);
     pasewordTextField.addActionListener(this);
     submit.addActionListener(this);
     reset.addActionListener(this);

     add(panel1,"North");
     add(panel2,"Center");
     add(panel3,"South");

 }
public void actionPerformed(ActionEvent e) {
    if(e.getSource() instanceof TextField){
        Object object=e.getSource();
        if(object==nameTextField){
            pasewordTextField.requestFocus();}
        if(object==pasewordTextField){
            nameTextField.requestFocus();}
        }
    if(e.getSource() instanceof Button)
    {
        if(e.getActionCommand().equals("提交")){
            nameTextField.setText("");           
            pasewordTextField.setText("");}
        if(e.getActionCommand().equals("重置")){
            nameTextField.setText("");
            pasewordTextField.setText("");}
    }
}
public static void main(String[] args) {
    User user=new User();
    user.setVisible(true);
    user.setSize(250,200);
}

}

  • 写回答

3条回答

  • 毕小宝 博客专家认证 2015-11-27 13:52
    关注

    调试了下你的代码,按钮的响应事件是正确进入了,问题是处理时设置文本域的setText方法没有起效,我在你设置完成“”空串后再getText取到的仍然是先前的值。
    所以,真正的问题是TextField的setText失效了。

    评论

报告相同问题?

悬赏问题

  • ¥15 使用C#,asp.net读取Excel文件并保存到Oracle数据库
  • ¥15 C# datagridview 单元格显示进度及值
  • ¥15 thinkphp6配合social login单点登录问题
  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配