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