大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 Java零基礎(chǔ)入門編程:GUI事件處理

Java零基礎(chǔ)入門編程:GUI事件處理

更新時(shí)間:2019-09-11 10:20:57 來源:動(dòng)力節(jié)點(diǎn) 瀏覽2639次



  今天講一下JavaGUI中的事件處理。


  圖形用戶界面系統(tǒng)借助事件驅(qū)動(dòng)模式處理所有用戶交互。用戶執(zhí)行一個(gè)操作,如移動(dòng)鼠標(biāo),單擊鼠標(biāo)按鈕,按下鍵盤上的某個(gè)鍵,釋放鍵盤鍵等。所有這些操作都將生成某種類型的事件。在Java中,每一個(gè)執(zhí)行的操作都是一個(gè)事件。


  處理這些事件的方式取決于應(yīng)用程序的類型。一些事件由“抽象窗口操作工具包(AWT)”或者執(zhí)行這些應(yīng)用程序的環(huán)境來處理。如瀏覽器或者Applet小程序。有一些事件需要調(diào)用此處理程序。


  監(jiān)聽器


  事件處理模型是一個(gè)過程,即應(yīng)用程序允許使用稱為監(jiān)聽器的對象注冊到處理程序的過程。當(dāng)發(fā)生適當(dāng)?shù)氖录r(shí),將自動(dòng)通知這些注冊過監(jiān)聽器,某個(gè)動(dòng)作被觸發(fā)了。

image.png

  事件監(jiān)聽程序即監(jiān)聽器監(jiān)聽由對象發(fā)生的特定事件。這個(gè)過程將依次調(diào)用處理事件的方法,即事件處理程序。每一個(gè)事件監(jiān)聽程序?qū)⑻峁┝颂幚磉@些事件的方法。


  簡單來說,監(jiān)聽器是個(gè)接口,如果你想監(jiān)聽組件的某一動(dòng)作,比如鼠標(biāo)點(diǎn)擊,按鈕按下這些事件,你就要實(shí)現(xiàn)鼠標(biāo)監(jiān)聽器,或者按鈕監(jiān)聽器等這樣的接口,然后再把這個(gè)實(shí)現(xiàn)了接口的對象注冊到要監(jiān)聽的組件上。


  對按鈕事件的處理


  只要鼠標(biāo)在某個(gè)按鈕上單擊,就會(huì)生成一個(gè)事件。


  看下面的例子


  Buttonbutton=newButton("確定");


  button.addActionListener(newActionListener(){


  publicvoidactionPerformed(ActionEvente){


  JOptionPane.showMessageDialog(null,"你點(diǎn)擊了按鈕");


  }


  });


  Button是確定按鈕,我們調(diào)用Button的addActionListener方法給它添加了一個(gè)點(diǎn)擊事件監(jiān)聽器。


  AddActionListener方法接受一個(gè)參數(shù),這個(gè)參數(shù)是一個(gè)ActionListener對象。由于ActionListener是個(gè)接口,因?yàn)橐獙?shí)現(xiàn)這個(gè)接口的類作為參數(shù)。ActionListener接口只有一個(gè)方法需要實(shí)現(xiàn),actionPerformed(ActionEvente)這個(gè)方法將在按鈕按下的時(shí)候發(fā)生。將傳遞一個(gè)事件對象ActionEvent。


  我們在這里用到了匿名類的寫法,即不使用對象引用,直接實(shí)例化一個(gè)類對象來實(shí)現(xiàn)ActionListener接口。一般實(shí)現(xiàn)事件處理用匿名類比較方便,大家可以熟悉一下這樣的寫法。


  以上的代碼等同于:


  Buttonbutton=newButton("確定");


  MyActionListeneral=newMyActionListener();


  button.addActionListener(al);


  classMyActionListenerimplementsActionListener{


  publicvoidactionPerformed(ActionEvente){


  JOptionPane.showMessageDialog(null,"你點(diǎn)擊了按鈕");


  }


  }


  鼠標(biāo)事件


  Java語言支持用戶通過鼠標(biāo)與應(yīng)用程序進(jìn)行交互。程序可以檢測鼠標(biāo)并對鼠標(biāo)操作中發(fā)生的變化作出反應(yīng)。。鼠標(biāo)事件通過MouseListener接口處理,并通過如下方法對事件反應(yīng)。


  mouseClicked:點(diǎn)擊事件,當(dāng)點(diǎn)擊和釋放鼠標(biāo)按鈕時(shí)處理此事件。


  mouseEntered:當(dāng)鼠標(biāo)進(jìn)入一個(gè)組件時(shí)處理此事件。


  mouseExitied:當(dāng)鼠標(biāo)離開組件時(shí)處理此事件。


  mousePressed:當(dāng)鼠標(biāo)按下時(shí)處理此事件。


  mouseReleased:當(dāng)鼠標(biāo)釋放時(shí)處理此事件。


  例子,我們來寫個(gè)程序,當(dāng)鼠標(biāo)進(jìn)入窗體時(shí)提示鼠標(biāo)進(jìn)入,離開時(shí)提示鼠標(biāo)離開


  publicclassMouseEventDemoextendsFrameimplementsMouseListener{


  privatePanelpanel=newPanel();


  privateLabellabel;


  publicMouseEventDemo(){


  setBounds(100,100,300,300);


  add(panel);


  label=newLabel("Newlabel");


  panel.add(label);


  panel.addMouseListener(this);


  }


  privatestaticfinallongserialVersionUID=5563848995118514763L;


  @Override


  publicvoidmouseClicked(MouseEvente){


  label.setText("你點(diǎn)擊了鼠標(biāo)");


  }


  @Override


  publicvoidmousePressed(MouseEvente){


  label.setText("你按下了鼠標(biāo)");


  }


  @Override


  publicvoidmouseReleased(MouseEvente){


  label.setText("你釋放了鼠標(biāo)鍵");


  }


  @Override


  publicvoidmouseEntered(MouseEvente){


  label.setText("鼠標(biāo)進(jìn)入");


  }


  @Override


  publicvoidmouseExited(MouseEvente){


  label.setText("鼠標(biāo)退出");


  }


  publicstaticvoidmain(String[]args){


  MouseEventDemodemo=newMouseEventDemo();


  demo.setVisible(true);


  }


  }

image.png

  總結(jié):


  要理解AWT對于事件處理的機(jī)制


  掌握常見的事件處理類


  熟悉匿名類的寫法


  以上就是動(dòng)力Java培訓(xùn)機(jī)構(gòu)小編介紹的“Java零基礎(chǔ)入門編程:GUI事件處理”的內(nèi)容,希望對大家有幫助,如有疑問,請?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。



提交申請后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)

免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 台湾一级毛片永久免费 | 伊在人亚洲香蕉精品区麻豆 | 国产精品亚洲专区在线播放 | 亚洲区欧美中文字幕久久 | 日本黄色免费一级片 | 五月天激情视频在线观看 | 四虎午夜 | 国产亚洲精品热视频在线观看 | 亚洲第一在线 | 精品久久久久久久99热 | 日韩久久一级毛片 | 日本制服丝袜在线 | 久久欧美精品欧美九久欧美 | 成人手机看片 | 欧美黑人激情性久久 | 天天干夜夜曰 | 亚洲国产一区在线精选 | 国产www在线观看 | 日韩人成 | 四虎影院永久 | 激情小视频在线播放免费 | 亚洲偷自拍另类图片二区 | 久久频精品99香蕉国产 | 亚洲成人在线视频观看 | 五月天亚洲婷婷 | 免费看成人播放毛片 | 久操视频免费 | 日本久久伊人 | 国产欧美在线观看精品一区二区 | 成人网视频 | 99精品国产自产在线观看 | 久久综合久久综合九色 | 新四虎影院| 国产欧美精品区一区二区三区 | 好吊色青青草 | 一级黄色片免费 | 六月色| 亚洲欧美日韩高清 | 国产精品亚洲精品久久成人 | 久久精品国产91久久麻豆自制 | 久久久久青草大香线综合精品 |