java中的事件處理
java中的事件處理札記(一)
今天學習了一些java中事件處理的一些方法,由於這點在java中挺重要的。因此在學習後寫個札記,讓自己能更好的回憶以便加深掌握。
什麼是事件處理機制:就是java中為了實現某種監聽功能,比如說我們點選按鈕或者點選滑鼠等等,我們就必須引入事件處理機制。
java中的事件處理總共分為以下四種情況:1.元件 2.鍵盤 3.滑鼠 4.視窗。
1.元件在事件處理機制中的使用方法
在java的GUI中,我們學習到元件的新增和使用。但是僅僅只有GUI是無法完成事件處理的。而對於GUI中的元件來說,如果我們要對某種事件進行監聽的話,就需要實現ActionListener這個介面,在這個介面中我們必須對其中的抽象方法進行重寫,也即actionPerformed方法進行重寫,在方法的重寫中我們加入可以對某種事件作出的反應,也即作出事件的處理。
e.g:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;//這是java中如果使用GUI和事件處理機制,必須匯入的三個包
public class A8_2 extends JFrame implements ActionListener{//在這裡實現介面ActionListener和繼承JFrame類
JPanel myPanel;
JButton button1,button2;
public static void main(String[] args){
A8_2 example = new A8_2();
}
A8_2(){//重寫建構函式
myPanel = new JPanel();
button1 = new JButton("紅色");
button2 = new JButton("藍色");
button1.addActionListener(this);//這個方法裡面的引數就是你要進行監聽的那個類,在這裡我們監聽的是當前這個類。同樣的,我們也可以監聽其他的類。
button1.setActionCommand("1111");//這裡面的引數是為了區別按鈕的,當存在多個按鈕時,就需要這麼一個方法來區別事件所發生的按鈕。
button2.addActionListener(this);
button2.setActionCommand("2222");
//此外,還可以進行多監聽.需要進行監聽多少個元件,就新增多少元件。
import javax.swing.*;
import java.awt.event.*;//這是java中如果使用GUI和事件處理機制,必須匯入的三個包
public class A8_2 extends JFrame implements ActionListener{//在這裡實現介面ActionListener和繼承JFrame類
JPanel myPanel;
JButton button1,button2;
public static void main(String[] args){
A8_2 example = new A8_2();
}
A8_2(){//重寫建構函式
myPanel = new JPanel();
button1 = new JButton("紅色");
button2 = new JButton("藍色");
button1.addActionListener(this);//這個方法裡面的引數就是你要進行監聽的那個類,在這裡我們監聽的是當前這個類。同樣的,我們也可以監聽其他的類。
button1.setActionCommand("1111");//這裡面的引數是為了區別按鈕的,當存在多個按鈕時,就需要這麼一個方法來區別事件所發生的按鈕。
button2.addActionListener(this);
button2.setActionCommand("2222");
//此外,還可以進行多監聽.需要進行監聽多少個元件,就新增多少元件。
public void actionPerformed(ActionEvent e){//我們必須來重寫這個方法
if(e.getActionCommand().equals("1111")){//這裡就體現出上面為什麼我們要區分按鈕
myPanel.setBackground(Color.red);
}
if(e.getActionCommand().equals("2222")){
myPanel.setBackground(Color.blue);
}
}
}
if(e.getActionCommand().equals("1111")){//這裡就體現出上面為什麼我們要區分按鈕
myPanel.setBackground(Color.red);
}
if(e.getActionCommand().equals("2222")){
myPanel.setBackground(Color.blue);
}
}
}
在這個程式中,我們會實現一個小功能,也就是通過按鍵來改變皮膚的顏色。從上面的程式碼來看,我們只是使用了元件常見的監聽方法,即addActionListener()。
相關文章
- Java——事件處理機制概要Java事件
- java事件處理模型是什麼Java事件模型
- [轉] Scala 中的非同步事件處理非同步事件
- 事件處理事件
- java當中的批處理Java
- Java 中的並行處理Java並行
- freeswitch的event事件處理事件
- Java-GUI程式設計之事件處理JavaGUI程式設計事件
- JavaSwing 事件處理Java事件
- vue事件處理Vue事件
- Flutter | 事件處理Flutter事件
- JavaScript事件處理JavaScript事件
- React事件處理React事件
- Java中對時間的處理Java
- java中的垃圾處理機制Java
- W3C的事件處理和IE的事件處理有哪些區別?事件
- redis的事件處理機制Redis事件
- react之事件處理React事件
- 事件分發之View事件處理事件View
- Java:實驗四 Java圖形介面與事件處理(頭歌)Java事件
- Java中的任務超時處理Java
- Java 中的異常處理機制Java
- Java8中的時間處理Java
- React 中常用的事件處理方式React事件
- 基於python的事件處理模型Python事件模型
- SAP CRM和Cloud for Customer中的Event handler(事件處理器)Cloud事件
- Laravel 事件&非同步處理Laravel事件非同步
- 事件分發和處理事件
- Java中的異常處理最佳實踐Java
- java優雅的處理程式中的異常Java
- java中 檔案壓縮處理Java
- mongoDB中聚合函式java處理MongoDB函式Java
- Android架構元件:用ViewModelCommandLiveData處理ViewModel中的事件釋出Android架構元件ViewLiveData事件
- nginx 是如何處理過期事件的?Nginx事件
- Android的事件處理——監聽介面方式Android事件
- 關於Android的幾種事件處理Android事件
- Nginx 超時事件的處理機制Nginx事件
- Netty中自定義事件處理程式和監聽器Netty事件
- Flink - CEP(複雜事件處理)事件