我想实现点击按钮弹出一个自定义的对话框,可是编写了下面的代码后发现没办法调用监听器,实现不了对话框的弹出,请高手指教!
import java.awt.*;
import java.awt.event.*;
public class work0 extends Frame
{
private Panel gridPanel1;
    public work0(String title)
    {
     super(title);
     setSize(600,400);
     setLocation(100,100);
     setgridLayoutPanel1();
     add(gridPanel1);
     addWindowListener(
     new WindowAdapter(){
     public void windowClosing(WindowEvent e){
     setVisible(false);
     System.exit(0);}});
    }
public <InterfaceHeader> void setgridLayoutPanel1()
   {
   gridPanel1=new Panel();
   gridPanel1.setLayout(new GridLayout(4,8));
   Button btn1=new Button("1");
   Button btn2=new Button("2");
   Button btn3=new Button("3");
   Button btn4=new Button("4");
   Button btn5=new Button("5");
   gridPanel1.add(btn1);
   gridPanel1.add(btn2);
   gridPanel1.add(btn3);
   gridPanel1.add(btn4);
   gridPanel1.add(btn5);
    btn2.addActionListener(new ActionListener(){
        public void actionPerformed(ActionEvent e) {
        new s1();
        setVisible(true);
        }
       });
    btn3.addActionListener(new ActionListener(){
        public void actionPerformed(ActionEvent e) {
        System.exit(0);
        }
       });
   }
public static void main(String[] args) 
{
work0 w=new work0("弹出对话框");
w.show();
}}
class s1 extends Frame{
private Panel p1;
s1(){
super ("变化图");
setSize(600,400);
setLocation(200,200);
setLayout();
add(p1);
addWindowListener(
     new WindowAdapter(){
     public void windowClosing(WindowEvent e){
     setVisible(false);
     System.exit(0);}});
}
private void setLayout() {
p1=new Panel();
p1.setLayout(null);
p1.setBackground(Color.blue);

}}