freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[高等教育]第6章圖形用戶界面設(shè)計-閱讀頁

2025-02-05 21:10本頁面
  

【正文】 log 對話框 (可模式化或非模式化 Window的擴(kuò)展 ) FileDialog 用于選擇文件的對話框 Frame Window的擴(kuò)展 , 應(yīng)用程序的容器 , 可以有菜單和標(biāo)題欄 Panel Container的擴(kuò)展 , 簡單的容器 ScrollPane 滾動組件 Window Container的擴(kuò)展 , 沒有菜單或邊界 , 是 Frame和 Dialog的超類 第 6章 圖形用戶界面設(shè)計 容器只能記錄包含的組件 , 而布局管理器則負(fù)責(zé)指定容器中組件的位置和大小 。 AWT中提供了五種布局管理器: ● BorderLayout:該布局管理器將容器劃分為東 、南 、 西 、 北 、 中五個區(qū)域 , 當(dāng)添加組件到容器中時 ,要指明將容器放置到哪一個區(qū)域中 。 ● FlowLayout:該布局管理器將添加到容器中的組件按從上到下 ,從左到右的順序依次排列 。 ● GridBagLayout:該布局管理器也是將容器分成網(wǎng)格,它和GridLayout不一樣的是,一個組件可以占據(jù)不止一個網(wǎng)格的位置。 第 6章 圖形用戶界面設(shè)計 表 Window、 Frame與 Dialog組件的屬性 屬 性 Window Frame Dialog 模式化 不是 不是 不是 (可設(shè)置 ) 可調(diào)大小 不可 可 可 標(biāo)題欄 無 有 有 邊界 無 有 有 標(biāo)題 無 有 有 菜單欄 無 有 無 焦點(diǎn)管理器 有 有 有 警告字符串 有 有 有 圖表 無 有 無 定位到框架 可 不可 可 第 6章 圖形用戶界面設(shè)計 容器類與容器事件 容器可以產(chǎn)生 ContainerEvent類代表的容器事件。 1. Container類的常量和方法 Container類定義了所有容器組件都必須具有的常量和方法。 COMPONENT_ADD表示添加容器事件。當(dāng)從容器移出組件時產(chǎn)生這種事件。 public void add(String orientation,Component obj):把組件 obj放到容器 的 orientation位置。 public void setLayout(LayoutManager layout):設(shè)置容器中組件的布局方式。定義如下: interface ContainerListener { public abstract void ponentAdded(ContainerEvent e)。 } 與其他事件監(jiān)聽器接口一樣,處理容器事件要做如下三項工作: ( 1)定義類實(shí)現(xiàn) ContainerListener接口 ( 2)將實(shí)現(xiàn) ContainerListener接口的類對象注冊為事件監(jiān)聽器 ( 3)為 ContainerListener接口中的方法編寫處理容器事件的語句。使用面板是為了方便組件布局。 ? 面板不能獨(dú)立存在,必須作為一個容器組件放到其他容器中。 ? 一個面板可以包含另一個面板。 ? 面板的默認(rèn)布局管理器是 FlowLayout。 第 6章 圖形用戶界面設(shè)計 例:用 Panel類建立三個容器 p p p3套在 p2 容器中,并把 p1和 p2兩個容器放到 Applet容器中,如果單擊“移出 Panel3”按鈕,則從 p2中移出 p3,如果單擊“添加 Panel3”按鈕,則把 p3添加到 p2。 import .*。 public class PanelDemo extends Applet implements ActionListener,ContainerListener { 第 6章 圖形用戶界面設(shè)計 Panel p1=new Panel()。 Panel p3=new Panel()。 Label prompt2=new Label(Panel2:)。 Button p1btn1=new Button(移出 Panel3)。 Checkbox p1c=new Checkbox(音樂 ,false)。 Checkbox p3c=new Checkbox(美術(shù) ,false)。 ()。 (prompt1)。 (p1btn1)。 (prompt2)。 第 6章 圖形用戶界面設(shè)計 (prompt3)。 (p3)。 add(p2)。 (this)。 } public void actionPerformed(ActionEvent e) { if (()==p1btn1) (p3)。 } 第 6章 圖形用戶界面設(shè)計 public void ponentRemoved(ContainerEvent e) { (移出 Panel3)。 } } 第 6章 圖形用戶界面設(shè)計 例: Panel與 CardLayout布局 通過 Panel容器和卡片布局建立三個選項卡的圖形界面。其中,“字號”按鈕對應(yīng)的選項卡包括一個標(biāo)簽和一個列表?!白稚卑粹o對應(yīng)的選項卡沒有添加組件??梢园殉绦蚋某墒褂?JPanel。 import .*。 public class Panel_Card extends Applet implements MouseListener { Button b1=new Button(字號 )。 Button b3=new Button(字色 )。 Button ok=new Button(確定 )。 第 6章 圖形用戶界面設(shè)計 Panel p2=new Panel()。 Panel page2=new Panel()。 Panel page123=new Panel()。 public void init() { (new FlowLayout(,0,0))。 第 6章 圖形用戶界面設(shè)計 (b2)。 add(p1)。 Choice mySelect=new Choice()。 (小四號 )。 (mySelect)。 Checkbox c1=new Checkbox(加粗 ,false)。 第 6章 圖形用戶界面設(shè)計 (c1)。 (layout)。 (page2,page2)。 add(page123)。 (esc)。 (page123,page1)。 (this)。 } 第 6章 圖形用戶界面設(shè)計 public void mouseClicked(MouseEvent e) { if (()==b1) (page123,page1)。 if (()==b3) (page123,page3)。 滾動面板提供了到一個更大的區(qū)域的視窗以及操縱這個視窗的滾動條 。 import .*。 Panel p = new Panel()。 (new GridLayout(3, 4))。 i 12。} (p)。 (150, 150)。 } } 第 6章 圖形用戶界面設(shè)計 圖 第 6章 圖形用戶界面設(shè)計 程序運(yùn)行結(jié)果如圖 。它不能控制自己所用的布局管理器 , 但可以將一個面板加入到滾動面板中 , 配置面板的布局管理器 , 并在那個面板中放置你的組件 。 第 6章 圖形用戶界面設(shè)計 框架與窗口事件 框架是功能齊全的窗口 , 有邊框 、 標(biāo)題欄和窗口控制按鈕 (最小化 、 最大化 、 關(guān)閉 ), 而且允許調(diào)整大小 。 用戶在程序設(shè)計過程中 , 當(dāng)程序窗口需要圖表化或者需要包含菜單欄時 , 則可以選擇使用框架組件 。 構(gòu)造一個框架后 , 可以用 add()方法來給框架添加組件 。 可以用 setLayout()方式來改變布局管理器屬性 。其中最小化和最大化按鈕的功能已由框架自動實(shí)現(xiàn)。如果希望單擊關(guān)閉按鈕能夠關(guān)閉窗口,需要在程序中編寫有關(guān)代碼。 ? 使用菜單命令。 第 6章 圖形用戶界面設(shè)計 4. 窗口事件 WindowEvent是窗口事件類 。 WindowEvent類定義了多種類型的窗口事件 , 如下所述: WINDOW_ACTIVATED:激活窗口 WINDOW_DEACTIVATED:窗口失活 WINDOW_OPENED:打開窗口 WINDOW_CLOSED:窗口關(guān)閉 WINDOW_CLOSING:正在關(guān)閉窗口 WINDOW_ICONIFIED:窗口最小化成圖標(biāo) WINDOW_DEICONIFIED:窗口從圖標(biāo)恢復(fù) 第 6章 圖形用戶界面設(shè)計 當(dāng)改變窗口的狀態(tài) ( 最大化 、 最小化 、 關(guān)閉 ) 時 , 會觸發(fā)WindowEvent事件 。 WindowEvent類的主要方法是 public Window getWindow(), 該方法返回產(chǎn)生 WindowEvent事件的窗口對象名稱,與getSource()方法的功能類似,區(qū)別是 getSource()返回值類型為 Object, getWindow()為 Window。 import .*。 } } 第 6章 圖形用戶界面設(shè)計 class MyFrame extends Frame implements ActionListener { Button btn=new Button(關(guān)閉 )。 setLayout(new FlowLayout())。 (this)。 setSize(300,200)。 } 第 6章 圖形用戶界面設(shè)計 public void actionPerformed(ActionEvent e) { if (()==btn) { dispose()。 } } } 第 6章 圖形用戶界面設(shè)計 class closeWin extends WindowAdapter { public void windowClosing(WindowEvent e) { Frame frm=(Frame)(())。 (0)。 import .*。 (test)。 (true)。 } public void windowClosed( WindowEvent e) { } public void windowClosing( WindowEvent e) { dispose()。 } 第 6章 圖形用戶界面設(shè)計 public void windowDeactivated( WindowEvent e) { setTitle(deactivated)。 } public void windowIconified( WindowEvent e) { setTitle(Iconified)。 JFrame類是 AWT Frame類的一個子類 。 例如: 例 import .*。 public class SwingDemo extends JFrame { public static void main(String[] args) { SwingDemo frame = new SwingDemo()。 (true)。 JPanel p = new JPane
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1