中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

詳解JAVA中SWT事件四種寫法

發布時間:2020-07-18 11:34:40 來源:億速云 閱讀:154 作者:小豬 欄目:開發技術

小編這次要給大家分享的是詳解JAVA中SWT事件四種寫法,文章內容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。

一:匿名內部類寫法

在一個組件下加入以下語句

   text.addMouseListener(new MouseAdapter(){
      public void mouseDoubleClich(MouseEVent e){
     MessageDialog.openInformation(null,"","helloworld"):
}})

這種方式是在事件內部直接實現處理代碼,優點是簡單方便,但也存在缺點

①:事件處理代碼會分散的出現在各個部分,維護起來不方便;

②:如果代碼較長,閱讀和維護起來麻煩

③:當工具欄、菜單欄也需要相同的行為時,代碼無法重用,導致代碼臃腫

二:命名內部類寫法:

 text.addMouseListener(new MyMouseDoubleClick());
...//定義MyMouseDoubleClick.java
private static final class MyMouseDoubleClick extends MouseAdapter{
     public void mouseDoubleClick(MouseEvent e){
          MessageDialog.openInformation(null,"","hello world")
}
}

三:外部類寫法:

這種方法與第二種方法類似,只是有內部類變為單個外部類

四:實現監聽器接口的寫法:

將類實現相應的接口,這樣類本身就成了一個監聽器,使得加入監聽器的代碼可以更簡潔,這種方法適合加入監聽器的組件較多,且要求監聽器的事件處理代碼可以被組件共用,需要注意的是

事件方法和其他方法混合在一起,所以應加一些注釋來說明。沒用事件處理方法可以用空來實現。如果繼承了了相應的事件適配器,則可根據需要寫相應的方法,另外需要注意,只有接口才有多繼承的特性,所以如果類本身已經是一個子類,則只有通過實現接口的方式來實現而不能繼承接口的適配器。

    public class Helloworld extends MouseAdapter implements MouseListener{
     public static void main(String[] args){
 .......
    Text text1=new Text(shell,SWT.Border);
   Text text2=new Text(shell, SWt.Border);
   text1.addMouseListener(this);
   text2.addMouseListener(this);
}
  public void mouseDoubleClick(MouseEvent e){
   MessageDialog.openInformation(null,"","hello world");}}
}
}

看完這篇關于詳解JAVA中SWT事件四種寫法的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

十堰市| 屏边| 定安县| 潢川县| 海口市| 华亭县| 连南| 临泽县| 炉霍县| 从江县| 香格里拉县| 韶关市| 诸暨市| 澜沧| 申扎县| 长沙县| 平乐县| 化德县| 高州市| 磴口县| 恩施市| 黔西县| 铁力市| 永顺县| 桂平市| 盐源县| 平凉市| 英吉沙县| 铁岭县| 额尔古纳市| 荆门市| 临颍县| 依兰县| 晋城| 白朗县| 鲁甸县| 治县。| 成安县| 牟定县| 定南县| 中西区|