AWT中windows Frame Dialog的區別

9.2窗口容器

    AWT中提供3個用於在屏幕上顯示窗口的構件:Window,Frame和Dialog。我們把它統稱爲窗口構件。

    java.awt.Window是三個窗口構件中最基本的構件;Window構件是Frame和Dialog的父類。它沒有邊界、標題欄和菜單欄,而且大小不可以調整。

    java.awt.Frame是Window的子類,它擁有邊界與標題欄設置,而且大小允許調整,可以有菜單欄。

    java.awt.Dialog也是Window的子類,它也擁有邊界與標題欄設置,大小允許調整,但它不支持菜單欄;

    窗口構件觸發窗口事件WindowEvent,它的的監聽者是WindowListener,裏面的接口包括:windowOpened(WindowEvent),windowClosed(WindowEvent)等,同學們可以參閱幫助文件; java.awt.event.WindowAdapter這個類實現了WindowListener接口,但裏面的方法都是空的方法,我們可以選定實現WindowListener接口裏的某些方法。

   下面,我們以Frame、Dialog和FileDialog爲例,說明窗口構件的用法。

9.2.1 Frame類

    java.awt包中的Frame類或子類所創建的一個對象就是一個窗口(默認佈局BorderLayout)。 

Frame類的主要方法:

  Frame():創建無名窗口。 

  Frame(String s):創建名字是s的窗口。

  setBounds(int a,int b,int width,int height):

  setSize(int width,int height):

  setBackground(Color c):

  setVisible(boolean b):

  pack():用緊湊方式顯示窗口。

  setTitle(String name):

  getTitle():獲取窗口的名字。

  setResizable(boolean b):

例:Example15_2.java

9.2.2 Dialog(對話框)類

    通過擴展Dialog類來創建一個對話框。Dialog類是java.awt中的一個類,也是一個容器。

    對話框可以接受用戶的輸入,實現與用戶的交互。對話框與一般窗口的區別在於它依賴於其它窗口:當它所依賴的窗口消失或最小化時,對話框也將消失;窗口還原時,對話框又會自動恢復。

    對話框分爲無模式和有模式兩種,有模式對話框只讓程序響應對話框內部的事件,對於對話框以外的事件程序不響應,而無模式對話框可以讓程序響應對話框以外的事件。

怎樣定義對話框類?

    通過Dialog的子類來建立一個對話框,即這個字類的一個對象,就是一個對話框。

Dialog類的主要方法如下:

Dialog(Frame f,String s)

Dialog(Frame f,String s,boolean b)

getTitle()

setTitle(String s)

setModal(boolean)

setSize()

setVisible(boolean b)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章