请问这段程序哪里错了?不是很难。谢谢!

来源:百度知道 编辑:UC知道 时间:2024/05/22 17:54:46
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class MyFra1 extends Frame implements ActionListener {
Button btn=new Button("确定");
MyFra1(){
super("nihao");
btn.addActionListener(this);
add(btn,"north");
setVisible(true);
setSize(100,200);
}

public void actionPerformed(ActionEvent e) {
System.exit(1);

}
public static void main(String[] args) {
MyFra1 fra=new MyFra1();

}

}

Frame的默认布局就是BoyderLayout
但将组件添加到BoyderLayout是有格式的
con.add(b,BouderLayout.NOTRH/SOUTH/EAST/WEST/CENTER)

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class MyFra1 extends Frame implements ActionListener {
Button btn=new Button("确定");
MyFra1(){
super("nihao");
btn.addActionListener(this);

add(btn,BorderLayout.NORTH); //BorderLayout是这样添加的

setVisible(true);
setSize(100,200);
}

public void actionPerformed(ActionEvent e) {
System.exit(1);

}
public static void main(String[] args) {
MyFra1 fra=new MyFra1();

}

}

这些可以用调试模式来调试的!

north是从哪里来的啊

既然你是在做一个图形用户界面,那么就得设置布局管理器,你的add(btn,"north");的北部指的应该是边界布局管理器,那么就应该先设置一个this.setLayout(new BorderLayout());才行。而且你的监听和设置显示,设置大小都没有指明对象,这样子肯定不行的。
import java.awt.*;
import javax