本文目錄一覽:
- 1、誰能給我講講java中的請求驅動和事件驅動?
- 2、這樣的計算器界面,Java如何設計其事件驅動程序?
- 3、在已經編寫好的Java「靜態」GUI界面程序基礎上要實現事件驅動功能,通常又必須包含四個基本步驟?
- 4、寫出Java事件驅動機制的工作原理
- 5、JAVA中的事件驅動編程怎麼理解
- 6、什麼是事件驅動編程機制
誰能給我講講java中的請求驅動和事件驅動?
什麼是事件驅動模型?
在講解事件驅動模型之前,我們現在看看事件驅動模型的三大要素:
·事件源:能夠接收外部事件的源體。
·偵聽器:能夠接收事件源通知的對象。
·事件處理程序:用於處理事件的對象。
學員應該要理解任何基於事件驅動模型的開發技術都包含以上三大要素,不管是.net還是java技術,甚至是以前我們使用的Visual Basic和Delphi語言都有基於以上三大要素的事件驅動模型開發流程。
現在我們來看一個生活中的示例,假如有一天你走在路上一不小心被天上掉下來的花瓶砸到了,並且暈死了過去。那麼整個過程其實就是一個事件處理流程,而且我們可以非常方便的分析出剛才所提到的事件驅動模型中的三大要素。
1.被砸暈的這個人其實就是事件源,因為他是能夠接受到外部的事件的源體。
2.偵聽器就是這個人的大腦神經,因為它會感知到疼痛。
3.事件處理就是這個人暈死了過去。
由於事件驅動模型在我們日常生活中是無處不在的,因此Java和其他的編程語言都將這一過程運用到了可視化編程中了。
這樣的計算器界面,Java如何設計其事件驅動程序?
你可以這樣,這裡主要的難點應該是點擊這個「=」號對運算符號的處理,你在程序裡面定義一個字元串且為全局變數,static String s=null;,點擊「+」按鈕的事件處理代碼為button1.addActionListener(new ActionListener(){
s=”+”;
});
點擊「-」按鈕的事件處理代碼為:
button2.addActionListener(new ActionListener(){
s=”-“;
});
點擊「*」按鈕的事件處理代碼為:
button3.addActionListener(new ActionListener(){
s=”*”;
});
點擊「/」按鈕的事件處理代碼為:
button3.addActionListener(new ActionListener(){
s=”/”;
});
最後就是對這「=」按鈕的事件處理,從你界面上看,「運算數一」、「運算數二」、「運算結果」都應該是JTextField或者TextField,以JTextField為例,
JTextField text1=”0.”;
JTextField text2=”0.”;
JTextField text3=”0.”;
「=」按鈕的事件響應:
button.addActionListener(new ActionListener(){
String s1=text1.getText();
String s2=text2.getText();
long result=0L;
if(s.equals(“+”))
result= Integer.parseInt(s1)+Integer.parseInt(s2);
f(s.equals(“-“))
result= Integer.parseInt(s1)-Integer.parseInt(s1);
if(s.equals(“*”))
result= Integer.parseInt(s1)*Integer.parseInt(s1);
if(s.equals(“/”))
result= Integer.parseInt(s1)/Integer.parseInt(s1);
text3.setText(Long.toString(resutl));
});
至於其他的數字按鈕的事件響應就不用我一一在寫了吧,很簡單的,就是點擊某個數字按鈕,比如5,就把5這個數字放入當前的JTextField中就行了,假設當前游標在「運算數一」那一欄,例:
button_5.addActionListener(new ActionListener(){
text1.setText(text1.getText()+button_5.getText());
});
就這樣了,我沒有用編譯器寫,可能編譯有不對的地方,但是思路就是這樣,很簡單的!
在已經編寫好的Java「靜態」GUI界面程序基礎上要實現事件驅動功能,通常又必須包含四個基本步驟?
在已經編寫好的Java「靜態」GUI界面程序基礎上要實現事件驅動功能,通常又必須包含四個基本步驟?
寫出Java事件驅動機制的工作原理
Swing是目前Java中不可缺少的窗口工具組,是用戶建立圖形化用戶界面(GUI)程序的強大工具。Java Swing組件自動產生各種事件來響應用戶行為。如當用戶點擊按鈕或選擇菜單項目時,Swing組件會產生一個ActionEvent。Swing組件會產生許多事件,如ActionEvents,ChangeEvents,ItemEvents等,來響應用戶的滑鼠點擊行為,列表框中值的改變,計時器的開始計時等行為。在Java Swing編程中,通過註冊監聽器,我們可以監聽事件源產生的事件,從而在事件處理程序中處理我們所需要處理的用戶行為。
Java Swing中處理各組件事件的一般步驟是:
1. 新建一個組件(如JButton)。
2. 將該組件添加到相應的面板(如JPanel)。
3. 註冊監聽器以監聽事件源產生的事件(如通過ActionListener來響應用戶點擊按鈕)。
4. 定義處理事件的方法(如在ActionListener中的actionPerformed中定義相應方法)。
以上步驟我們可以用多種方法實現。但人們通常用二種方法。第一種方法是只利用一個監聽器以及多個if語句來決定是哪個組件產生的事件;第二種方法是使用多個內部類來響應不同組件產生的各種事件,其具體實現又分兩種方式,一種是匿名內部類,一種是一般內部類。
JAVA中的事件驅動編程怎麼理解
事件驅動
那麼什麼是事件呢?比如說抬手,吃蘋果,玩手機,打英雄聯盟,說白了就是一個動作
那麼驅動是什麼呢?比如說抬起手來看看手中的手機有沒有消息,玩手機看到一條很有意思的說說,打英雄聯盟輸了,說白了就是事件產生的後續結果。
那麼事件驅動就是一個因果關係,我觸發了什麼,什麼就會執行,如果有個中間人,那麼就會告訴中間人,我幹了什麼,比如說Java中的按鈕的點擊事件,就是這樣的。希望以上對你的理解有所幫助。
什麼是事件驅動編程機制
事件驅動編程機製為需要處理的事件編寫相應的事件處理程序
要理解事件驅動和程序,就需要與非事件驅動的程序進行比較。
實際上,現代的程序大多是事件驅動的,比如多線程的程序,肯定是事件驅動的。
早期則存在許多非事件驅動的程序,這樣的程序,在需要等待某個條件觸發時,會不斷地檢查這個條件,直到條件滿足,這是很浪費cpu時間的。
而事件驅動的程序,則有機會釋放cpu從而進入睡眠態(注意是有機會,當然程序也可自行決定不釋放cpu),當事件觸發時被操作系統喚醒,這樣就能更加有效地使用cpu。
擴展資料:
為需要處理的事件編寫相應的事件處理程序。代碼在事件發生時執行。
delphi和java編程特點
n事件(event)表示程序某件事發生的信號,事件分為:
o外部事件:由外部用戶動作產生的事件。例如,點擊滑鼠、按鍵盤。
o內部事件:由系統內部產生的事件。例如,定時器事件。
n源對象(source object)是產生事件的對象。
參考資料百度百科-事件驅動編程
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/248955.html