Chapter 12 Event-Driven Programming
          1. source object: 事件產生源
          比如一個按鈕就是單擊按鈕這個動作的產生源,每個事件都是事件類的一個實例,事件類的根類為java.util.EventObject
          EventObject.getSource()返回產生源
          如果某個控間能夠產生某事件,那么它的任何子類都能夠生成該事件。
          除了javax.swing.event.ListSelectionEvent,其余事件類都包含在java.awt.event包中
          2. Java 的事件處理機制稱為 delegation-based model,用戶作用于某個source object上,另一個對象捕捉到這個事件。后者稱為listener,成為listener的兩個必要條件:
          listener類必須實現event-listener的接口,Java為每個GUI事件提供了listener,如
          ActionEvent - ActionListener listener接口都包含了稱為處理機(handler)的方法處理事件。
          listener類必須由source object注冊,注冊方法由具體的事件類型決定。如ActionEvent - addActionListener
          例如,要監聽JButton類的單擊事件
          ListenerClass listener = new ListenerClass();
          JButton jbt = new JButton("OK");
          jbt.addActionListener(listener);
          如果某個listener被注冊了兩次,則相應的處理也會進行兩次。
          3. EventObject 類
          getSource()方法獲得產生源
          java.awt.event.ActionEvent 類
          String getActionCommand()方法獲得有關該動作的命令串,如對于按鈕,返回按鈕的文字
          int getModifier()方法獲得在該動作進行時modifier keys(應該是alt ctrl shift吧)的情況
          long getWhen()方法返回該動作進行的時間,自1970.1.1 00:00:00開始計時的毫秒數

          posts - 403, comments - 310, trackbacks - 0, articles - 7
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          2.8 Java notes

          Posted on 2007-04-22 20:23 ZelluX 閱讀(227) 評論(0)  編輯  收藏 所屬分類: OOP
          2007-02-08 16:47:38
          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 永川市| 右玉县| 兴隆县| 永胜县| 浦城县| 湖南省| 洱源县| 绥化市| 望城县| 新丰县| 甘泉县| 托里县| 旌德县| 余姚市| 堆龙德庆县| 怀化市| 瑞昌市| 达尔| 尤溪县| 高清| 白城市| 临夏市| 乌审旗| 连州市| 镇巴县| 深水埗区| 曲阜市| 介休市| 勃利县| 丰城市| 子长县| 塔城市| 新巴尔虎左旗| 黄冈市| 绵竹市| 双流县| 陆良县| 成武县| 青岛市| 二连浩特市| 大石桥市|