黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java零基礎入門編程:GUI事件處理

Java零基礎入門編程:GUI事件處理

更新時間:2019-09-11 10:20:57 來源:動力節點 瀏覽2717次



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


  圖形用戶界面系統借助事件驅動模式處理所有用戶交互。用戶執行一個操作,如移動鼠標,單擊鼠標按鈕,按下鍵盤上的某個鍵,釋放鍵盤鍵等。所有這些操作都將生成某種類型的事件。在Java中,每一個執行的操作都是一個事件。


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


  監聽器


  事件處理模型是一個過程,即應用程序允許使用稱為監聽器的對象注冊到處理程序的過程。當發生適當的事件時,將自動通知這些注冊過監聽器,某個動作被觸發了。

image.png

  事件監聽程序即監聽器監聽由對象發生的特定事件。這個過程將依次調用處理事件的方法,即事件處理程序。每一個事件監聽程序將提供了處理這些事件的方法。


  簡單來說,監聽器是個接口,如果你想監聽組件的某一動作,比如鼠標點擊,按鈕按下這些事件,你就要實現鼠標監聽器,或者按鈕監聽器等這樣的接口,然后再把這個實現了接口的對象注冊到要監聽的組件上。


  對按鈕事件的處理


  只要鼠標在某個按鈕上單擊,就會生成一個事件。


  看下面的例子


  Buttonbutton=newButton("確定");


  button.addActionListener(newActionListener(){


  publicvoidactionPerformed(ActionEvente){


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


  }


  });


  Button是確定按鈕,我們調用Button的addActionListener方法給它添加了一個點擊事件監聽器。


  AddActionListener方法接受一個參數,這個參數是一個ActionListener對象。由于ActionListener是個接口,因為要實現這個接口的類作為參數。ActionListener接口只有一個方法需要實現,actionPerformed(ActionEvente)這個方法將在按鈕按下的時候發生。將傳遞一個事件對象ActionEvent。


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


  以上的代碼等同于:


  Buttonbutton=newButton("確定");


  MyActionListeneral=newMyActionListener();


  button.addActionListener(al);


  classMyActionListenerimplementsActionListener{


  publicvoidactionPerformed(ActionEvente){


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


  }


  }


  鼠標事件


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


  mouseClicked:點擊事件,當點擊和釋放鼠標按鈕時處理此事件。


  mouseEntered:當鼠標進入一個組件時處理此事件。


  mouseExitied:當鼠標離開組件時處理此事件。


  mousePressed:當鼠標按下時處理此事件。


  mouseReleased:當鼠標釋放時處理此事件。


  例子,我們來寫個程序,當鼠標進入窗體時提示鼠標進入,離開時提示鼠標離開


  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("你點擊了鼠標");


  }


  @Override


  publicvoidmousePressed(MouseEvente){


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


  }


  @Override


  publicvoidmouseReleased(MouseEvente){


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


  }


  @Override


  publicvoidmouseEntered(MouseEvente){


  label.setText("鼠標進入");


  }


  @Override


  publicvoidmouseExited(MouseEvente){


  label.setText("鼠標退出");


  }


  publicstaticvoidmain(String[]args){


  MouseEventDemodemo=newMouseEventDemo();


  demo.setVisible(true);


  }


  }

image.png

  總結:


  要理解AWT對于事件處理的機制


  掌握常見的事件處理類


  熟悉匿名類的寫法


  以上就是動力Java培訓機構小編介紹的“Java零基礎入門編程:GUI事件處理”的內容,希望對大家有幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。



提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 天天操天天摸天天爽 | 欧美奶水| 在线小视频你懂的 | 中国一级做a爱片免费 | 黄色片视频网站 | 日韩亚洲一区二区三区 | 欧美色图亚洲 | 激情美女网站 | 欧美成人三级一区二区在线观看 | 在线观看黄日本高清视频 | 欧美日韩在线网站 | 成人网中文字幕色 | 国产无人区卡一卡二卡三网站 | 美国一级片网站 | 国产精品人成 | 美国俄罗斯毛片一区二区 | 亚洲欧美专区 | 一级毛片成人免费看a | 欧美精品一区二区三区久久 | 麻豆一区二区大豆行情 | 亚洲欧美中文字幕 | 91桃色国产线观看免费 | 波多野结衣在线观看一区二区 | 国产2021精品视频免费播放 | 手机午夜看片 | 午夜日韩 | 欧美精品video | 91国语精品自产拍在线观看性色 | 九九网站| aⅴ免费视频 | 中文字幕第98页小明免费 | gogo人体大胆高清专业久久久 | 国产免费一区2区3区4区 | 国产成人无精品久久久 | 日日艹| 亚洲综合区小说区激情区噜噜 | 欧美激情黄色 | jizjizjizji在线观看 | 欧美一级特黄aa大片视频 | a视频网站| 日本一区二区三区在线看 |