其實,和一個類內(nèi),差別不是太大,最大的區(qū)別是另一個類的實例化。
成都服務(wù)器托管,創(chuàng)新互聯(lián)建站提供包括服務(wù)器租用、成都聯(lián)通服務(wù)器托管、帶寬租用、云主機、機柜租用、主機租用托管、CDN網(wǎng)站加速、域名注冊等業(yè)務(wù)的一體化完整服務(wù)。電話咨詢:13518219792
//想在類A里使用就不能使private。此處注意,一般為了封裝性建議寫private。就在類B監(jiān)聽,然后使用個變量標(biāo)記,類A調(diào)用;一樣能實現(xiàn)你說的。
沒記錯的話,直接通過MouseEvent對象的getSource方法,是可以獲得事件源對象的,也就是具體的label對象,強制轉(zhuǎn)換一下就能直接獲得對象的其他屬性。
你直接寫一個方法A,在你要監(jiān)聽的那根類的方法B中調(diào)用方法A,這樣B每次執(zhí)行當(dāng)然就會調(diào)用A了。
你的意思是不是想讓新的類來處理JButton的事件?如果是這樣你讓新的類實現(xiàn)ActionListener接口,然后JButton addActionListener(新的類的對象)不就可以了。
你可以在監(jiān)聽器類的中定義一個成員“變量驗證用戶名和密碼的類”的一個實例。在監(jiān)聽器類的構(gòu)造方法中將“變量驗證用戶名和密碼的類”作為參數(shù)傳進來。也就是保存“變量驗證用戶名和密碼的類”的一個引用。
在放值得時候 可以加一個回調(diào)函數(shù), 當(dāng)放置的值為目標(biāo)值時 調(diào)用某一個函數(shù)就可以達到所謂監(jiān)聽的目的?;蛘?不管放什么值 都調(diào)用這個回調(diào)函數(shù),在函數(shù)中寫自己的邏輯即可。
java中的事件監(jiān)聽不是通過線程實現(xiàn)的,它是通過一種注冊--通知機制實現(xiàn)的。在java的設(shè)計模式中,有一種模式叫:觀察者模式,和這個類似。
簡單的辦法就是不斷讀取要監(jiān)聽的數(shù)據(jù),如果有改變,就讀取出來。
兩個解決辦法,多謝一個類,作為中間類,這個類,繼承Observable,然后,讓這個類,再繼承Activity。我沒試過這種方式。這種方式肯定可行,就是自己構(gòu)建一個觀察者模式。如果你對觀察者模式很了解。這個很容易。
你直接寫一個方法A,在你要監(jiān)聽的那根類的方法B中調(diào)用方法A,這樣B每次執(zhí)行當(dāng)然就會調(diào)用A了。
(1) 讓類實現(xiàn)窗體監(jiān)聽器接口,這將使得該類變成窗體事件監(jiān)聽器;(2) 向類注冊窗體事件監(jiān)聽器;(3) 實現(xiàn)窗體事件監(jiān)聽器的所有方法。
其實JFrame可以用這個方法實現(xiàn)關(guān)閉窗口的:this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);這樣就不用加監(jiān)聽器了。
}}只要在每個Frame里設(shè)定this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);即可。EXIT_ON_CLOSE,關(guān)閉程序。(所有窗口和進程都會關(guān)閉)DISPOSE_ON_CLOSE,只關(guān)閉本窗口。HIDE_ON_CLOSE,只隱藏本窗口,不關(guān)閉。
WindowStateListener, EventListener。WindowListener并不會監(jiān)聽windowLostFocus事件。//第二個問題:frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);這句話等于說一點X,就關(guān)閉程序,所以才顯示不出確認(rèn)對話框。
分享標(biāo)題:包含java驗證碼監(jiān)聽器代碼的詞條
網(wǎng)頁路徑:http://www.ekvhdxd.cn/article38/dcosjpp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號、網(wǎng)站維護、動態(tài)網(wǎng)站、企業(yè)建站、移動網(wǎng)站建設(shè)、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)