<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    jsenter

    JAVA授權(quán)事件模型講解(原創(chuàng))

    JAVA的授權(quán)事件模型包含三個概念:事件源,事件,事件監(jiān)聽器。

    一,事件源:一個產(chǎn)生事件的對象。當(dāng)這個對象的內(nèi)部狀態(tài)改變時,事件就會產(chǎn)生。一個事件源必須注冊一個事件監(jiān)聽器已使監(jiān)聽器能夠可以接受一個特定時間的通知。每一種事件都有它特定的注冊方法,通用形式為:addTypeListener(TypeListener e)

    二,事件:一個事件是描述了一個事件源的狀態(tài)改變的對象。他可能通過一個人與圖形用戶接口的交互產(chǎn)生。如輸入文字,點(diǎn)擊鼠標(biāo)。也可能不是由這些產(chǎn)生,如:一個事件可能在定時器中到期而產(chǎn)生。當(dāng)然用戶也可以自由的定義自己的事件。

    注意:其中的Type可以是Key, Mouse,等。一個事件源可能允許注冊多個事件監(jiān)聽器,也可能只允許注冊一個監(jiān)聽器。

    事件源也允許注銷一個事件監(jiān)聽器,通用方法為:removeTypeListener(TypeListener e);

    三,事件監(jiān)聽器:一個當(dāng)事件發(fā)生時的時候被通知的對象。它有兩個要求:
    1,它必須在事件源中注冊。
    2,它必須實(shí)現(xiàn)接受和處理事件通知的方法。

    還是來個比喻吧:你要想成為一個可以接受事件并處理事件的對象(即事件監(jiān)聽器),必須繼承TypeListener類,其中的Type為事件類型。然后去注冊你想監(jiān)聽的對象,并自己實(shí)現(xiàn)處理事件發(fā)生的方法,然后你就坐在等待事件的發(fā)生啦,哈哈!


    附源程序研究用:
    /*===============DemoEvent.java清單=============*/
    import java.awt.*;
    import java.awt.event.*;
    import java.applet.*;


    public class DemoEvent extends Applet implements MouseListener, MouseMotionListener{
        public String msg = "";
        public int mouseX = 0, mouseY = 0;
        
        /*
        *注冊事件監(jiān)聽器
        */
        public void init() {
            addMouseListener(this);
            addMouseMotionListener(this);
        }

        /*
        *下面為所有處理MouseEvent的方法,當(dāng)然你可以自定義自己的方法,但不能少了這些。
        */
        public void mouseMoved(MouseEvent me) {
            showStatus("mouse moved at :"+me.getX() +"," + me.getY());    
        }
        public void mouseReleased(MouseEvent me) {
            mouseX = me.getX();
            mouseY = me.getY();
            msg = "UP";
            repaint();    
        }
        public void mouseClicked(MouseEvent me) {
            mouseX = 0;
            mouseY = 10;
            msg = "Mouse clicked!";
            repaint();
        }
        public void mouseEntered(MouseEvent me) {
            mouseX = 0;
            mouseY = 10;    ;
            msg = "Mouse Entered!";
            repaint();
        }
        public void mouseExited(MouseEvent me) {
            mouseX = 0;
            mouseY = 0;
            msg = "Mouse Exited!";
            repaint();
        }
        public void mouseDragged(MouseEvent me) {
            mouseX = me.getX();
            mouseY = me.getY();
            msg = "*";
            repaint();    
        }
        public void mousePressed(MouseEvent me) {
            mouseX = me.getX();
            mouseY = me.getY();
            msg = "Down";
            repaint();
        }
        /*===================方法說明結(jié)束==================*/    
        public void paint(Graphics g) {
            g.drawString(msg, mouseX, mouseY);
        }
    }
    /*
    *相關(guān)說明:這里的DemoEvent既是事件源也是事件監(jiān)聽器。
    *
    */
    /*===================DemoEvent.java清單===================*/

    posted on 2005-03-31 22:44 李貝 閱讀(1379) 評論(4)  編輯  收藏 所屬分類: JAVA

    評論

    # re: JAVA授權(quán)事件模型講解(原創(chuàng)) 2005-03-31 23:26 dudu

    字體太大, 麻煩調(diào)整一下!  回復(fù)  更多評論   

    # re: JAVA授權(quán)事件模型講解(原創(chuàng)) 2005-04-01 11:50 李貝

    謝謝提醒啊,原來我怕別人看的累,所以搞大點(diǎn)的字,
    已經(jīng)改過來了!不行的話還請?jiān)偬嵝眩?nbsp; 回復(fù)  更多評論   

    # re: JAVA授權(quán)事件模型講解(原創(chuàng)) 2005-06-17 13:16 zorrowei

    兩者是一回事情嗎?小可不清楚的說~!  回復(fù)  更多評論   

    # re: JAVA授權(quán)事件模型講解(原創(chuàng)) 2005-06-17 13:17 zorrowei

    我說的是:
    授權(quán)事件模型與委托事情模型!  回復(fù)  更多評論   

    主站蜘蛛池模板: 亚洲国产精品综合久久网各| 日本在线免费播放| 亚洲人成毛片线播放| 国产成人精品日本亚洲专区61| 欧亚精品一区三区免费| 无码囯产精品一区二区免费| 一级午夜a毛片免费视频| 亚洲AV永久无码精品网站在线观看| 1区1区3区4区产品亚洲| 亚洲午夜福利在线观看| 亚洲av无码成人精品区| 免费精品一区二区三区在线观看| 18禁成人网站免费观看| 久操视频免费观看| a毛片视频免费观看影院| 亚州**色毛片免费观看| 特级毛片全部免费播放a一级| 亚洲欧美自偷自拍另类视| 91亚洲性爱在线视频| 亚洲精品在线不卡| 久久久久亚洲AV片无码| 最新国产AV无码专区亚洲| 亚洲免费在线观看| 亚洲国产小视频精品久久久三级| 国产精品嫩草影院免费| 美女黄网站人色视频免费国产| 18禁网站免费无遮挡无码中文| 精品熟女少妇av免费久久| 久久久久久久久久国产精品免费| 成人国产精品免费视频| 中文字幕不卡免费高清视频| 产传媒61国产免费| 中文字幕看片在线a免费| 中文字字幕在线高清免费电影| 国产精品hd免费观看| 国产精品免费看久久久香蕉| caoporn成人免费公开| 插鸡网站在线播放免费观看| 久久成人免费大片| 97视频免费观看2区| 日韩免费一区二区三区在线|