功能:單擊一個按鈕實現關閉窗口:
import java.awt.*; import java.awt.event.*; public class StudyAction { // 定義該圖形所需的組件的引用 private Frame f; private Button but; StudyAction() { init(); } // 對圖形用戶界面初始化 public void init() { f = new Frame("窗口——by星雲"); // 對Frame進行基本設置。 /* * f.setBounds(300, 100, 600, 500); 原型:void setBounds(int x, int y, int * width, int height)移動組件並調整其大小 這一條語句等價於 f.setLocation(300, * 100);//窗口位置水平300,垂直方向200 f.setSize(600, 500);//設置窗口大小,寬度600,高度500 */ f.setBounds(300, 100, 600, 500); // 設置窗口位置和大小 f.setLayout(new FlowLayout());// 默認邊界布局方式重置成流式布局 but = new Button("點擊我將關閉窗口"); // 將組件添加到frame中 f.add(but); // 加載一下窗體上的事件 dealwithEvent(); // 顯示窗體 f.setVisible(true); } private void dealwithEvent() { f.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ System.exit(0); } }); /*讓按鈕具備退出程序的功能 按鈕就是事件源 * 那么選擇那個監聽器呢? * 通過關閉窗體示例了解到想要知道哪個組件具備什么樣的特監聽器 * 需要查看該組件對象的功能。*/ but.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ System.exit(0); } }); } public static void main(String args[]) { new StudyAction(); } }
運行截圖:
參考文獻: