這篇文章將為大家詳細講解有關(guān)java事件處理模型知識點有哪些,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
石林ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!我們在上手一個新項目時,對于陌生的環(huán)境不適用難免會出現(xiàn)一些錯誤,這時候就需要有經(jīng)驗的人來幫忙。java中的事件處理模型就類似這樣的原理,分為三類對象,在特定的環(huán)境下,由監(jiān)聽器對事件源進行監(jiān)督。
每個事件源可以發(fā)出若干種不同類型的事件。在程序中為每個事件源指定一個或者多個監(jiān)聽者,它可以對某種事件進行監(jiān)聽。如果某種事件發(fā)生,就調(diào)用相應(yīng)監(jiān)聽者中的方法。
(1)Event Source(事件源):事件發(fā)生的場所,通常就是各個組件,如按鈕,窗口;
(2)Event(事件):事件封裝了界面組件上發(fā)生的特定事情。
(3)Event Listener(事件監(jiān)聽器):負責(zé)監(jiān)聽事件源所發(fā)生的事件,并對各種事件做出相應(yīng)的響應(yīng)。
package Swing; import java.awt.*; import javax.swing.*; import java.awt.event.*; public class Event_Exam extends JFrame implements ActionListener { static Event_Exam mainJFrame=new Event_Exam(); static JLabel labl1,labl2; static JLabel showlb1=new JLabel("0"); static JLabel showlb2=new JLabel("0.0"); static JTextField text1,text2; public static void main(String[] args) { // TODO Auto-generated method stub mainJFrame.setTitle("操作事件示例!"); mainJFrame.setSize(200, 160); Container container=mainJFrame.getContentPane(); container.setLayout(new FlowLayout()); labl1=new JLabel("輸入整數(shù)型:"); container.add(labl1); text1=new JTextField("0",10); text1.addActionListener(mainJFrame);//把監(jiān)聽者mainJFrame向事件源text1注冊 container.add(text1); labl2=new JLabel("輸入浮點數(shù):"); container.add(labl2); text2=new JTextField("0.0",10); text2.addActionListener(mainJFrame);//把監(jiān)聽者mainJFrame向事件源text2注冊 container.add(text2); showlb1.setForeground(Color.blue); showlb1.setHorizontalTextPosition(SwingConstants.LEFT); showlb2.setForeground(Color.green); showlb2.setHorizontalTextPosition(SwingConstants.LEFT); container.add(showlb1); container.add(showlb2); mainJFrame.setVisible(true); } public void actionPerformed(ActionEvent e) {//事件發(fā)生時的處理操作 //提取文本框內(nèi)容并顯示在showlb1、showlb2中 showlb1.setText("整數(shù)為"+text1.getText()); showlb2.setText("浮點數(shù)為"+text2.getText()); } }
java的事件模型知識點擴展:
事件模型
首先你得有個事主兒(事件源),啥時候做個事通知我下,我好處理,OK,在我這注個冊吧,有事告你聲,你好處理,事情來了,調(diào)用準(zhǔn)備好的方法XX。。。
事件源 ---發(fā)生事件的對象
事件--- 發(fā)生了什么事 eg :MouseEvent KeyEvent actionEvent等等
監(jiān)聽器 -- 監(jiān)聽某component的某個事件 一般有實現(xiàn)某種監(jiān)聽器的類的對象來監(jiān)聽 一般把事件源對象的具體信息封裝到e(監(jiān)聽器的方法參數(shù)里 XXEvent e)
注冊 -- addXXListener(XXListener) component的addXXListener(實現(xiàn)XX監(jiān)聽器的對象) 監(jiān)聽誰,登個記,注意這個事組件的addXXListener方法
回調(diào)方法 -- 預(yù)先準(zhǔn)備好了,如果你xx,我就調(diào)用之前準(zhǔn)備好的事件處理程序XX
關(guān)于“java事件處理模型知識點有哪些”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。