package cn.jjw.dzr.awt;import java.awt.Button;
import java.awt.Color;
import java.awt.Component;
import java.awt.Dialog;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;public class AwtTest
{
public static void main(String[] args)
{
Component com = new Frame("wo de chuangkou");
com.setSize(400, 300);
com.setLocation(200, 100);
com.setBounds(300, 200, 400, 300);
com.setVisible(true);

((Frame)com).addWindowListener(new WindowAdapter(){ @Override
public void windowClosing(WindowEvent e)
{

super.windowClosing(e);
System.out.println(e);
System.exit(1);
}

});
((Frame)com).setLayout(new FlowLayout());

Button button =new Button("按钮");
((Frame)com).add(button);

button.addActionListener(new ActionListener(){ @Override
public void actionPerformed(ActionEvent e)
{
// TODO Auto-generated method stub
System.out.println("ActionPerformed:"+e);
final Dialog dialog = new Dialog(new Frame());
//这个Frame代表什么呢。
//代表dialog的父窗口么。
dialog.setTitle("Antoher");
dialog.setVisible(true);
dialog.setLocation(100, 200);
dialog.setSize(300, 300);
dialog.setBackground(Color.BLUE);
}

});
button.addMouseListener(new MouseListener(){ @Override
public void mouseClicked(MouseEvent e)
{
// TODO Auto-generated method stub
System.out.println("Click: "+e.getButton());
final Dialog dialog = new Dialog(new Frame());
//这个Frame代表什么呢。
//代表dialog的父窗口么。
dialog.setTitle("Hello");
dialog.setVisible(true);
dialog.setLocation(300, 200);
dialog.setSize(300, 300);
dialog.setBackground(Color.BLUE);

dialog.addWindowListener(new WindowAdapter(){ @Override
public void windowClosing(WindowEvent e)
{
// TODO Auto-generated method stub
// super.windowClosing(e);
System.out.println(e);
// dialog.setVisible(false);
//为什么执行上面的语句,系统会提示我需要将dialog修改成final;
//如何设置关闭该对话框?
//dialog没有destory或者exit方法。
//而且
dialog.dispose();
}

});
} @Override
public void mousePressed(MouseEvent e)
{
System.out.println("Pressed: "+e.getButton());

} @Override
public void mouseReleased(MouseEvent e)
{
System.out.println("Release: "+e.getButton());

} @Override
public void mouseEntered(MouseEvent e)
{
System.out.println("Entered: "+e.getButton());

} @Override
public void mouseExited(MouseEvent e)
{
// TODO Auto-generated method stub

}

});

}
}如上面代码中 :button.addActionListener(new ActionListener(){ @Override
public void actionPerformed(ActionEvent e)
{
// TODO Auto-generated method stub
System.out.println("ActionPerformed:"+e);
final Dialog dialog = new Dialog(new Frame());
//这个Frame代表什么呢。
//代表dialog的父窗口么。
dialog.setTitle("Antoher");
dialog.setVisible(true);
dialog.setLocation(100, 200);
dialog.setSize(300, 300);
dialog.setBackground(Color.BLUE);
}

});
和public void mouseClicked(MouseEvent e)
{
// TODO Auto-generated method stub
System.out.println("Click: "+e.getButton());
final Dialog dialog = new Dialog(new Frame());
//这个Frame代表什么呢。
//代表dialog的父窗口么。
dialog.setTitle("Hello");
dialog.setVisible(true);
dialog.setLocation(300, 200);
dialog.setSize(300, 300);
dialog.setBackground(Color.BLUE);

dialog.addWindowListener(new WindowAdapter(){ @Override
public void windowClosing(WindowEvent e)
{
// TODO Auto-generated method stub
// super.windowClosing(e);
System.out.println(e);
// dialog.setVisible(false);
//为什么执行上面的语句,系统会提示我需将dialog修改成final;
//如何设置关闭该对话框?
//dialog没有destory或者exit方法。
//而且
dialog.dispose();
}

貌似会起到相同的效果。