
JAVA代码改错
大神帮小弟看下哪出错了importjava.awt.*;importjavax.swing.*;publicclassTest05extendsJFrame{privat...
大神帮小弟看下哪出错了
import java.awt.*;
import javax.swing.*;
public class Test05 extends JFrame{
private JTextField wbk;
private JPasswordField mmk;
private JLabel bq1,bq2;
private JPanel mb1,mb2,mb3;
private JButton an1,an2;
public Test05(){
mb1=new JPanel();
mb2=new JPanel();
mb3=new JPanel();
wbk=new JTextField(10);
mmk=new JPasswordField(10);
bq1=new JLabel("用户名");
bq2=new JLabel("密码");
an1=new JButton("登陆");
an1=new JButton("退出");
this.setLayout(new GridLayout(3,1));
mb1.add(bq1);mb1.add(wbk);
mb2.add(bq2);mb2.add(mmk);
mb3.add(an1);mb3.add(an2);
this.add(mb1);
this.add(mb2);
this.add(mb3);
this.setTitle("登陆窗体");
this.setSize(300,300);
this.setVisible(true);
this.setResizable(false);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args){
new Test05();
}
} 展开
import java.awt.*;
import javax.swing.*;
public class Test05 extends JFrame{
private JTextField wbk;
private JPasswordField mmk;
private JLabel bq1,bq2;
private JPanel mb1,mb2,mb3;
private JButton an1,an2;
public Test05(){
mb1=new JPanel();
mb2=new JPanel();
mb3=new JPanel();
wbk=new JTextField(10);
mmk=new JPasswordField(10);
bq1=new JLabel("用户名");
bq2=new JLabel("密码");
an1=new JButton("登陆");
an1=new JButton("退出");
this.setLayout(new GridLayout(3,1));
mb1.add(bq1);mb1.add(wbk);
mb2.add(bq2);mb2.add(mmk);
mb3.add(an1);mb3.add(an2);
this.add(mb1);
this.add(mb2);
this.add(mb3);
this.setTitle("登陆窗体");
this.setSize(300,300);
this.setVisible(true);
this.setResizable(false);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args){
new Test05();
}
} 展开
展开全部
帮你运行:
F:\oop>javac Test05.java
F:\oop>java Test05
Exception in thread "main" java.lang.NullPointerException
at java.awt.Container.addImpl(Container.java:1090)
at java.awt.Container.add(Container.java:410)
at Test05.<init>(Test05.java:23)
at Test05.main(Test05.java:34)
错误在line:23行,注释掉后:
this.setLayout(new GridLayout(3,1));
mb1.add(bq1);mb1.add(wbk);
mb2.add(bq2);mb2.add(mmk);
//mb3.add(an1);mb3.add(an2);
this.add(mb1);
this.getContentPane().add(mb2);
//this.getContentPane().add(mb3);
this.setTitle("登陆窗体");
然后就发现对了,界面出来了。然后看23行:
mb3.add(an1); mb3.add(an2);
换行后执行,返现错的是24行:
mb3.add(an1);
mb3.add(an2);
仔细一看,亲,你的an2有没有初始化啊!!!!
an1=new JButton("登陆");
an1=new JButton("退出");
看看上面的代码。。。。。。。。。。我能咋样。好好的练习吧,还是要多写代码,多改错。
展开全部
你得把控制台的报错信息贴出来啊。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
报的什么错啊 ?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-11-16
展开全部
an1=new JButton("登陆");
an2=new JButton("退出");
mb3.add(an1);mb3.add(an2);
an2=new JButton("退出");
mb3.add(an1);mb3.add(an2);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
主函数里面应该写 Tset05 test=new Test05();
new Test05()不对的。。
new Test05()不对的。。
追问
是吗?还是不对呢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询