1、事件處理機制:AWT組件自身不編程處理相應(yīng)的事件,面是交由事件監(jiān)聽器處理(事件授權(quán)處理模型)。事件編程:用戶編程定義每個特定事件發(fā)生時程序應(yīng)做出何種響應(yīng),并且這些響應(yīng)代碼會在對應(yīng)的事件發(fā)生時由系統(tǒng)自動調(diào)用。
目前創(chuàng)新互聯(lián)公司已為近1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管維護(hù)、企業(yè)網(wǎng)站設(shè)計、吉州網(wǎng)站維護(hù)等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
2、事件監(jiān)聽器:就是調(diào)用事件處理方法的對象。當(dāng)界面操作事件產(chǎn)生并被發(fā)送到產(chǎn)生事件的組件時,該組件將把事件發(fā)送給能接受和處理該事件的監(jiān)聽器。
3、java中的事件監(jiān)聽不是通過線程實現(xiàn)的,它是通過一種注冊--通知機制實現(xiàn)的。在java的設(shè)計模式中,有一種模式叫:觀察者模式,和這個類似。
4、Java 最新的事件處理方法是基于授權(quán)事件模型,事件源生成事件并將其發(fā)送至一個或多個監(jiān)聽器,監(jiān)聽器簡單地等待,直到它收到一個事件。一旦事件被接受,監(jiān)聽器將處理這些事件,然后返回。
5、z事件對象:用于在事件源與事件處理器間傳遞信息的橋梁。事件都繼承自java.util.EventObject類。它們之間的關(guān)系是:當(dāng)事件源產(chǎn)生事件時,事件一直傳播到相應(yīng)的事件監(jiān)聽器,然后監(jiān)聽器調(diào)用特定的方法處理事件。
6、鼠標(biāo)事件要添加mouselistener,捕獲mouseevent。mouselistener里的幾個事件的參數(shù)都是mouseevent,mouseevent提供了獲得點擊了哪個鍵的方法getbutton。比如下面這個點擊事件處理。
1、this代表本類,就是this所在的類。addItemStateChanged是為了監(jiān)聽ItemEvent的,而ItemEvent是指示項被選定或取消選定的語義事件,此高級事件是在用戶已選定項或取消選定項時由 ItemSelectable 對象(如 List)生成的。
2、這句就是給按鈕加監(jiān)聽啊,你想給哪些按鈕加就在哪些按鈕上調(diào)用addActionListener(this);方法。你的類還實現(xiàn)ActionListener接口,并補全actionPerformed方法,添加監(jiān)聽的方法才不會報錯。有問題的話再問,把問題描述的具體些。
3、把這兩句submitButton.addActionListener(null);resetButton.addActionListener(null);改成 submitButton.addActionListener(this);resetButton.addActionListener(this);看行不行。
4、把所需要放的圖片路徑放在一下數(shù)組中,再把點擊按鈕添加一個單擊事件,如果點擊則數(shù)組加1,不過需要判斷不能大于數(shù)組大小,不然就索引越界了。然后把圖片路徑給修改了。
//想在類A里使用就不能使private。此處注意,一般為了封裝性建議寫private。就在類B監(jiān)聽,然后使用個變量標(biāo)記,類A調(diào)用;一樣能實現(xiàn)你說的。
沒記錯的話,直接通過MouseEvent對象的getSource方法,是可以獲得事件源對象的,也就是具體的label對象,強制轉(zhuǎn)換一下就能直接獲得對象的其他屬性。
你用一個監(jiān)聽器去監(jiān)聽一個事件的發(fā)生,就可以在線程a這個類中,寫一個產(chǎn)生事件的一段代碼,然后每當(dāng)產(chǎn)生一個事件之后,去遍歷list,去調(diào)用監(jiān)聽器的對于這個事件的處理方法,這樣子就可以了。這應(yīng)該就是java中的事件模式。
你說的是swing組件吧,要是是,你可以設(shè)一個全局的變量String flag=,按鈕A和按鈕B都加好監(jiān)聽。