5.JAVA之GUI編程窗體事件


我們回顧下第三篇時的內容:

3.JAVA之GUI編程Frame窗口窗體是無法直接關閉的,想要關閉須進程管理器結束進程方式關掉。

現在我們就來解決下這個問題。

***********************************************

功能實現如下幾點:

1.建立一個窗口;

2.窗口有標題;

3.窗口大小設置;

4.窗口位置設置;

5.窗口可見。

6.添加一個帶有文字標簽的按鈕;

7.窗體設置布局方式。

8.為窗口關閉事件監聽器,實現關閉窗口功能。

 *****************************************************************************


 我們要明確:

1.窗體是一個事件源;

2.在事件源上添加監聽器並加上處理事件方法即可。

代碼如下:

import java.awt.Button; import java.awt.FlowLayout; import java.awt.Frame; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; class studyframe { public static void main(String[] args) { Frame f = new Frame();//構造一個最初不可見的 Frame 新實例()。  f.setTitle("窗口——by星雲");//設置窗口標題內容 f.setSize(500, 400);//設置窗口大小,寬度500,高度400 f.setLocation(300, 200);//設置窗口位置為距離屏幕左邊水平方向300,上方垂直方向200 f.setVisible(true);//設置窗體可見。 f.setLayout(new FlowLayout());//設置窗體布局為流式布局。 f.addWindowListener(new MyWin());//在窗體事件源上添加監聽器。 
Button b=new Button("我是一個按鈕");//在窗口中添加一個按鈕; f.add(b);//將按鈕添加到窗口內 } } /*如果用這種方法,就必須把這七個方法全部重寫。 class MyWin implements WindowListener { 覆蓋七個方法。可以我只用到了關閉的動作。 其他方法都沒有用到,如果用這種方法,就必須把這七個方法全部重寫。 } 因為WindowListener的子類WindowAdapter已經實現了WindowListener接口。 並覆蓋了其中的所有方法。那么我只要繼承自WindowAdapter覆蓋我需要的方法即可。 */

//創建窗口監聽器方法類繼承WindowAdapter中的方法。 //下面是個窗口關閉監聽器 class MyWin extends WindowAdapter{ public void windowClosing(WindowEvent e) { System.exit(0);//關閉窗口處理關閉動作監聽事件 } }

注意:現在點擊X就可以關閉窗口了。

運行代碼:

上面代碼也可以這樣寫:

import java.awt.Button; import java.awt.FlowLayout; import java.awt.Frame; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; class studyframe { public static void main(String[] args) { Frame f = new Frame();//構造一個最初不可見的 Frame 新實例()。  f.setTitle("窗口——by星雲");//設置窗口標題內容 f.setSize(500, 400);//設置窗口大小,寬度500,高度400 f.setLocation(300, 200);//設置窗口位置為距離屏幕左邊水平方向300,上方垂直方向200 f.setVisible(true);//設置窗體可見。 f.setLayout(new FlowLayout());//設置窗體布局為流式布局。 //在窗體事件源上添加帶有處理事件的監聽器。 f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0);//關閉窗口處理關閉動作監聽事件  } }); Button b=new Button("我是一個按鈕");//在窗口中添加一個按鈕; f.add(b);//將按鈕添加到窗口內  } }

************************************************************

參考文獻:

 

 

 

 

上篇:4.JAVA之GUI編程事件監聽機制  下篇:6.JAVA之GUI編程Action事件


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM