borderlayout布局出错
以下是原程序:packagecom.hetao1;importjava.awt.*;importjavax.swing.*;publicclassDemo8_2exten...
以下是原程序:
package com.hetao1;
import java.awt.*;
import javax.swing.*;
public class Demo8_2 extends JFrame{
//定义按钮
JButton jb1,jb2,jb3,jb4,jb5;
//主函数
public static void main(String[] args) {
Demo8_2 demo8_2=new Demo8_2();
}
public Demo8_2()
{
//创建组件
jb1=new JButton("中部");
jb1=new JButton("东部");
jb3=new JButton("南部");
jb4=new JButton("西部");
jb5=new JButton("北部");
//添加组件
this.add(jb1,BorderLayout.CENTER);
this.add(jb2,BorderLayout.EAST);
this.add(jb3,BorderLayout.SOUTH);
this.add(jb4,BorderLayout.WEST);
this.add(jb5,BorderLayout.NORTH);
//设置窗体属性
this.setTitle("布局管理器案例");
this.setSize(300,300);
this.setLocation(100,200);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//显示窗体
this.setVisible(true);
}
}
在添加组件那部分出错,删掉就不报错了
报错内容
Exception in thread "main" java.lang.NullPointerException
at java.awt.Container.addImpl(Container.java:1039)
at java.awt.Container.add(Container.java:957)
at javax.swing.JFrame.addImpl(JFrame.java:540)
at java.awt.Container.add(Container.java:925)
at com.hetao1.Demo8_2.<init>(Demo8_2.java:30)
at com.hetao1.Demo8_2.main(Demo8_2.java:15)
求问怎么解决 展开
package com.hetao1;
import java.awt.*;
import javax.swing.*;
public class Demo8_2 extends JFrame{
//定义按钮
JButton jb1,jb2,jb3,jb4,jb5;
//主函数
public static void main(String[] args) {
Demo8_2 demo8_2=new Demo8_2();
}
public Demo8_2()
{
//创建组件
jb1=new JButton("中部");
jb1=new JButton("东部");
jb3=new JButton("南部");
jb4=new JButton("西部");
jb5=new JButton("北部");
//添加组件
this.add(jb1,BorderLayout.CENTER);
this.add(jb2,BorderLayout.EAST);
this.add(jb3,BorderLayout.SOUTH);
this.add(jb4,BorderLayout.WEST);
this.add(jb5,BorderLayout.NORTH);
//设置窗体属性
this.setTitle("布局管理器案例");
this.setSize(300,300);
this.setLocation(100,200);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//显示窗体
this.setVisible(true);
}
}
在添加组件那部分出错,删掉就不报错了
报错内容
Exception in thread "main" java.lang.NullPointerException
at java.awt.Container.addImpl(Container.java:1039)
at java.awt.Container.add(Container.java:957)
at javax.swing.JFrame.addImpl(JFrame.java:540)
at java.awt.Container.add(Container.java:925)
at com.hetao1.Demo8_2.<init>(Demo8_2.java:30)
at com.hetao1.Demo8_2.main(Demo8_2.java:15)
求问怎么解决 展开
展开全部
少了Container cont=getContentPane();
//添加组件
this.add(jb1,BorderLayout.CENTER);
this.add(jb2,BorderLayout.EAST);
this.add(jb3,BorderLayout.SOUTH);
this.add(jb4,BorderLayout.WEST);
this.add(jb5,BorderLayout.NORTH);
这几句改为:
Container cont=getContentPane();
cont.add(jb1,BorderLayout.CENTER);
cont.add(jb2,BorderLayout.EAST);
cont.add(jb3,BorderLayout.SOUTH);
cont.add(jb4,BorderLayout.WEST);
cont.add(jb5,BorderLayout.NORTH);
//添加组件
this.add(jb1,BorderLayout.CENTER);
this.add(jb2,BorderLayout.EAST);
this.add(jb3,BorderLayout.SOUTH);
this.add(jb4,BorderLayout.WEST);
this.add(jb5,BorderLayout.NORTH);
这几句改为:
Container cont=getContentPane();
cont.add(jb1,BorderLayout.CENTER);
cont.add(jb2,BorderLayout.EAST);
cont.add(jb3,BorderLayout.SOUTH);
cont.add(jb4,BorderLayout.WEST);
cont.add(jb5,BorderLayout.NORTH);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//创建组件
jb1=new JButton("中部");
jb1=new JButton("东部");
jb3=new JButton("南部");
jb4=new JButton("西部");
jb5=new JButton("北部");
中你有两个jb1,而jb2没值所以为空,所以报空指针异常!把第二个改为jb2就行了
jb1=new JButton("中部");
jb1=new JButton("东部");
jb3=new JButton("南部");
jb4=new JButton("西部");
jb5=new JButton("北部");
中你有两个jb1,而jb2没值所以为空,所以报空指针异常!把第二个改为jb2就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
jb1=new JButton("中部");
jb1=new JButton("东部"); // 应该是 jb2
jb1=new JButton("东部"); // 应该是 jb2
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询