Java
中的事件是在圖形用戶界面中發(fā)生變化時(shí)創(chuàng)建的對(duì)象。如果用戶單擊按鈕、單擊組合框或在文本字段中鍵入字符等,則會(huì)觸發(fā)事件,創(chuàng)建相關(guān)的事件對(duì)象。此行為是 Java
事件處理機(jī)制的一部分,包含在 Swing GUI 庫(kù)中。對(duì)Java 事件感興趣的同學(xué),可以參加Java培訓(xùn)來獲得知識(shí)和技能,以便快速上崗。
例如,假設(shè)我們有一個(gè) JButton。 如果用戶點(diǎn)擊了
JButton,就會(huì)觸發(fā)一個(gè)按鈕點(diǎn)擊事件,該事件將被創(chuàng)建,并將其發(fā)送到相關(guān)的事件監(jiān)聽器(在本例中為 ActionListener)。
相關(guān)的偵聽器將已經(jīng)實(shí)現(xiàn)了確定事件發(fā)生時(shí)要采取的操作的代碼。
請(qǐng)注意,事件源必須與事件偵聽器配對(duì),否則其觸發(fā)將導(dǎo)致無動(dòng)作。
事件如何運(yùn)作
Java 中的事件處理由兩個(gè)關(guān)鍵元素組成:
事件源,它是在事件發(fā)生時(shí)創(chuàng)建的對(duì)象。 Java
提供了幾種類型的這些事件源,在下面的事件類型部分中進(jìn)行了討論。
事件偵聽器,“偵聽”事件并在事件發(fā)生時(shí)對(duì)其進(jìn)行處理的對(duì)象。想學(xué)習(xí)java的同學(xué)不妨報(bào)個(gè)Java培訓(xùn)班,可以節(jié)省學(xué)習(xí)時(shí)間,提高學(xué)習(xí)效率,在短時(shí)間內(nèi)學(xué)有所成,還能找到一份不錯(cuò)的工作。
Java 中有幾種類型的事件和偵聽器:每種類型的事件都與相應(yīng)的偵聽器相關(guān)聯(lián)。
對(duì)于本次討論,讓我們考慮一種常見的事件類型,即由 Java 類 ActionEvent
表示的動(dòng)作事件,當(dāng)用戶單擊按鈕或列表項(xiàng)時(shí)觸發(fā)該事件。
在用戶操作時(shí),會(huì)創(chuàng)建一個(gè)與相關(guān)操作對(duì)應(yīng)的 ActionEvent 對(duì)象。 該對(duì)象既包含事件源信息,也包含用戶采取的具體操作。
然后將此事件對(duì)象傳遞給相應(yīng)的 ActionListener 對(duì)象的方法:
void actionPerformed(ActionEvent e)
執(zhí)行此方法并返回適當(dāng)?shù)?GUI
響應(yīng),這可能是打開或關(guān)閉對(duì)話框、下載文件、提供數(shù)字簽名或界面中用戶可用的任何其他無數(shù)操作。
事件類型
以下是 Java
中一些最常見的事件類型。在java培訓(xùn)中,培訓(xùn)課程不僅注重理論,更注重項(xiàng)目的實(shí)戰(zhàn)能力,能夠讓你快速適應(yīng)企業(yè)開發(fā)的進(jìn)度,成為企業(yè)所需要的java人才。
ActionEvent:表示一個(gè)圖形元素被點(diǎn)擊,例如一個(gè)按鈕或列表中的項(xiàng)。相關(guān)監(jiān)聽器:ActionListener。
ContainerEvent:表示發(fā)生在 GUI
容器本身的事件,例如,如果用戶從界面中添加或刪除對(duì)象。相關(guān)監(jiān)聽器:ContainerListener。
KeyEvent:表示用戶按下、鍵入或釋放鍵的事件。相關(guān)監(jiān)聽器:KeyListener。
WindowEvent:表示與窗口相關(guān)的事件,例如,當(dāng)窗口關(guān)閉、激活或停用時(shí)。相關(guān)監(jiān)聽器:WindowListener。
MouseEvent:表示與鼠標(biāo)相關(guān)的任何事件,例如單擊或按下鼠標(biāo)時(shí)。相關(guān)監(jiān)聽器:MouseListener。
請(qǐng)注意,多個(gè)偵聽器和事件源可以相互交互。例如,如果多個(gè)事件屬于同一類型,則單個(gè)偵聽器可以注冊(cè)多個(gè)事件。這意味著,對(duì)于一組執(zhí)行相同類型操作的類似組件,一個(gè)事件偵聽器可以處理所有事件。同樣,一個(gè)事件可以綁定到多個(gè)偵聽器,如果這適合程序的設(shè)計(jì)(盡管這不太常見)。如果想快速掌握Gradle,參加Java培訓(xùn)就是個(gè)不錯(cuò)的選擇,有明確清晰的學(xué)習(xí)路線和經(jīng)驗(yàn)豐富的專業(yè)講師面授指導(dǎo)教學(xué),讓學(xué)習(xí)更科學(xué),更有效。