中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中的事件監聽機制實例分析

發布時間:2022-02-22 18:52:51 來源:億速云 閱讀:369 作者:iii 欄目:開發技術

本篇內容主要講解“Java中的事件監聽機制實例分析”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Java中的事件監聽機制實例分析”吧!

事件監聽機制的定義

Java事件監聽機制在圖形界面編程的時候應用的比較多。我們會時常對界面進行一系列的操作,比如在輸入框輸入內容、點擊登錄注冊按鈕等等,著一些操作都被稱之為事件。當進行這些操作的時候,程序就會采取相應的措施來相應這些事件。

1.事件源對象

    (1)什么內容可以成為事件源對象?

    只有容器組件和元素組件可以成為事件源對象。

    (2)怎么確定界面上誰是事件源對象?

    當你的動作發生在哪一個組件上,那么這個組件就是事件源對象。

2、事件監聽方法

    (1)事件監聽方法由事件源對象提供。

    (2)事件監聽方法捕獲事件源對象上面的動作。如果有動作發生,則方法捕獲動作,收集源對象的信息和動作信息,然后把這些信息交給事件接口的對象進行處理。

3、事件接口(處理類)

    事件接口對象拿到事件監聽方法提供的信息后,會根據這些信息,去調用相應的事件處理方法。

接下來我們通過一個簡單的實例代碼感受一下:

思路

    1、構建一個窗體,再裝上一個start按鈕。

    2、定義LoginListener事件處理類。這個類繼承了ActionListener動作事件接口,需要重寫接口里面的抽象方法。

    3、實例化LoginListener事件處理對象。

    4、給事件處理類對象添加動作監聽方法,并指定事件處理類對象。

代碼實例:

//第一步就簡單地構造一個窗體
package Login20190318;

import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Graphics;

import javax.swing.JButton;
import javax.swing.JFrame;

//Draw類繼承JFrame類  相當于Draw類就是JFrame類  直接調用JFram類中的屬性和方法
public class Draw extends JFrame
{
	//入口主函數
	public void initUI()
	{
		this.setSize(1500,600);
		FlowLayout flowlayout=new FlowLayout(FlowLayout.CENTER,5,5);
		this.setLayout(flowlayout);
		JButton button=new JButton("Start");
		this.add(button);
		
		this.setVisible(true);
		
		//使窗體獲得繪圖板權限
		Graphics graphics=this.getGraphics();
		
		//實例化監聽方法類  并傳入參數
		DrawLis drawlis=new DrawLis(graphics);
	
		//使按鈕button調用監聽方法
		button.addActionListener(drawlis);
	}
	
	
	
	public static void main(String[] args) 
	{
		//實例化Draw類并調用入口函數
		Draw draw=new Draw();
		draw.initUI();
		
	}

}
//定義事件監聽方法的類
package Login20190318;

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
import java.awt.Graphics;

//實現監聽接口
public class DrawLis implements ActionListener
{

	private Graphics g;
	
	//構造方法用于傳參
	public DrawLis(Graphics g)
	{
		this.g=g;
	}
	
	//定義監聽方法,畫一個橢圓
	public void actionPerformed(ActionEvent e)
	{
		Random random = new Random();
		int x=random.nextInt(1600);
		int y=random.nextInt(1600);
		g.fillOval(x,y,60,70);
	}
	
}

到此,相信大家對“Java中的事件監聽機制實例分析”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

灌云县| 敦化市| 确山县| 新疆| 宝山区| 辛集市| 静海县| 开鲁县| 定日县| 黑河市| 方正县| 孝昌县| 加查县| 南阳市| 精河县| 滁州市| 阜新| 太保市| 永胜县| 东至县| 江口县| 敦煌市| 德钦县| 凤庆县| 茶陵县| 乌拉特前旗| 左权县| 昌江| 双桥区| 铜鼓县| 浦县| 诏安县| 桐乡市| 东乡| 建湖县| 左云县| 渭南市| 舟山市| 青阳县| 平塘县| 凤阳县|