JAVASE事件监听

news2025/1/13 9:33:59

在这里插入图片描述

代码:

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Scanner;

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

public class Text7 { 
	 
    public static void main(String[] args) {
    	JFrame frame = new JFrame();
    	frame.setSize(500, 500);//创建窗口
    	
    	frame.setLocationRelativeTo(null);//设置居中
    	
    	frame.setLayout(null);//取消默认布局
    	
    	frame.setDefaultCloseOperation(3);//设置关闭模式
    	
    	JButton btn = new JButton("按钮");//创建按钮
    	
    	btn.setBounds(0, 0, 100, 100);//设置按钮位置以及大小
    	
    	frame.getContentPane().add(btn);//获取窗口并向窗口添加按钮
    	btn.addActionListener(new actionListionimp());//Action是一个接口需要被实现
    	
    	frame.setVisible(true);//窗口可视化
    	
    	//事件源btn,确定动作:按钮被按下了 or 空格被按下了
   }

}

class actionListionimp implements ActionListener{

	@Override
	public void actionPerformed(ActionEvent e) {//实现方法
		// TODO Auto-generated method stub
		System.out.println("按钮被按下了");
	}
	
}

在这里插入图片描述
代码:

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Scanner;

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

public class Text7 { 
	 
    public static void main(String[] args) {
    	JFrame frame = new JFrame();
    	frame.setSize(500, 500);//创建窗口
    	
    	frame.setLocationRelativeTo(null);//设置居中
    	
    	frame.setLayout(null);//取消默认布局
    	
    	frame.setDefaultCloseOperation(3);//设置关闭模式
    	
    	JButton btn = new JButton("按钮");//创建按钮
    	
    	btn.setBounds(0, 0, 100, 100);//设置按钮位置以及大小
    	
    	frame.getContentPane().add(btn);//获取窗口并向窗口添加按钮
       
    	btn.addMouseListener(new mouseListenerimpl());
    	
    	frame.setVisible(true);//窗口可视化
    	
    	//事件源btn,确定动作:按钮被按下了 or 空格被按下了
   }

}

class mouseListenerimpl implements MouseListener{

	@Override
	public void mouseClicked(MouseEvent e) {
		// TODO Auto-generated method stub
		System.out.println("鼠标被点击了");
	}

	@Override
	public void mousePressed(MouseEvent e) {
		// TODO Auto-generated method stub
		System.out.println("鼠标被按下了");
	}

	@Override
	public void mouseReleased(MouseEvent e) {
		// TODO Auto-generated method stub
		System.out.println("鼠标被松开了");
	}

	@Override
	public void mouseEntered(MouseEvent e) {
		// TODO Auto-generated method stub
		System.out.println("鼠标划入了");
	}

	@Override
	public void mouseExited(MouseEvent e) {
		// TODO Auto-generated method stub
		System.out.println("鼠标划出了");
	}
	
}

在这里插入图片描述

代码:

import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.util.Scanner;

import javax.swing.JFrame;

public class Text6 extends JFrame implements KeyListener{//继承父类Jframe,获取父类方法
	 
    public static void main(String[] args) {
    	   new Text6().init();
   }
   public void init() {
	setSize(500, 500);//创建窗口
   	
   	setLocationRelativeTo(null);//设置居中
   	
   	setLayout(null);//取消默认布局
   	
   	setDefaultCloseOperation(3);//设置
   	
   	this.addKeyListener(this);//本身就是Listener的实现类
   	
   	setVisible(true);//可视化
   }
@Override
public void keyTyped(KeyEvent e) {
	// TODO Auto-generated method stub
	
}
@Override
public void keyPressed(KeyEvent e) {
	// TODO Auto-generated method stub
	System.out.println("键盘按下了");
}
@Override
public void keyReleased(KeyEvent e) {
	// TODO Auto-generated method stub
	System.out.println("键盘被松开了");
}
}

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/998810.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

管理类联考——数学——汇总篇——知识点突破——应用题——最值问题

⛲️ 一、考点讲解 最值问题是应用题中最难的题目,也是考生普遍丢分的题目。最值问题一般要结合函数来分析,一般结合二次函数和平均值定理求解。最值问题的求解步骤是:先设未知变量,然后根据题目建立函数表达式,最后利…

HT for Web (Hightopo) 使用心得(1)- 基本概念

Hightopo 公司 3D 可视化产品有对应的官方手册。但是这些手册内容比较多。对于想学习的新同学来说可能相对比较繁琐。这里本人根据个人使用经验做了一些总结。希望对读者有所帮助。 本文会提到一些前端开发的概念,如 H5, JavaScript,JSON 等。没有开发经…

【linux input子系统-01】核心层、事件处理层、设备驱动层

简介 input子系统的三层: 核心层:为事件处理层、设备驱动层提供接口,并在input_handler和input_dev之间建立关联;事件处理层:内核对象对应input_handler,用于接收-解析-处理设备驱动层上报的输入事件&…

借助VScode将 Docker 容器用作开发环境

参考 借助 Visual Studio Code 将 Docker 容器用作开发环境 - Training | Microsoft Learn 存在的问题 Remote-SSH XHR failed无法访问远程服务器 【VScode】Remote-SSH XHR failed无法访问远程服务器_SuperSources的博客-CSDN博客 可能是网络问题,打开vpn 就可以正…

探索GreatADM:如何快速定义监控

引文 在数据库运维过程中,所使用的运维管理平台是否存在这样的问题: 1、默认监控粒度不够,业务需要更细颗粒度的监控数据。2、平台默认的监控命令不适合,需要调整阈值量身定制监控策略。3、不同类型的实例或组件需要有不同的监控重点,但管理平台监控固…

【云原生】kubectl常用命令大全

目录 一、资源管理方法 kubectl 的命令大全 二、 kubectl常用命令大全 2.2 项目的生命周期:创建-->发布-->更新-->回滚-->删除 1、创建 kubectl create命令 2、发布 kubectl expose命令 3、更新 kubectl set 4、回滚 kubectl rollou…

什么是实时监控系统?

监控报警器在工业生产和电子行业中广泛应用。其中包括数据收发器、多功能监控报警器、人体接地监控器、手腕带监控报警器等等。 通过网络把“静电监测设备”、“接地监控报警器”、“数据转换器”、“计算机”等设备连接起来,连接成一个完整的静电实时监控系统。缺一…

u盘制成系统盘之后如何让恢复普通盘

U盘装完pe后怎么还原成普通U盘 1.插入U盘,按WindowsR 输入diskpart 2.输入“list disk”回车,查看U盘代号,例如下图里我的U盘代号是磁盘1(你的不一定是1,一定要分清楚) 3.输入“select disk 2”选中U盘磁…

2 亿 + 数据打开方式:人工智能数字疗法

你今天真好看 APP:您好,我们目前是一个大学生创新项目团队,内容为针对青少年痤疮问题的「人工智能数字疗法」。目前正在进行 AI 诊断模型的训练,看到您产品的信息并且开放了数据库,我们想知道:如何才能使用贵公司的数据…

PDF文件太大怎么办?三招教会你PDF文件压缩

PDF文件太大怎么办?这是许多人在处理PDF文件时遇到的问题。为了帮助大家解决这个问题,下面总结了三个可以解决PDF文件过大问题的方法,需要的朋友抓紧来看看吧~ 方法一:使用嗨格式压缩大师 嗨格式压缩大师是一款功能强大的PDF压缩…

蓝牙资讯|苹果计划为AirPods耳机带来体温测量、听力测试功能

彭博社马克・古尔曼透露,苹果计划最早在 2024 年为 AirPods 和 AirPods Max 带来 USB-C 端口古尔曼称,该公司显然正在努力将其所有基于 Lightning 接口的配件改用 USB-C 接口。其中,AirPods Pro 将率先改用新接口,该产品将与 iPho…

php webuploader 大文件上传带进度条

1&#xff0c;先下载百度的webuploader js上传框架 链接&#xff1a;https://pan.baidu.com/s/1Kxct0rIkasuTWv_jIzZkRA 提取码&#xff1a;c9q7 index.html <!DOCTYPE html> <html><head><meta charset"utf-8"><title></…

asp.net+sqlserver+c#学生作品展示及评分系统

&#xff08;1&#xff09;基本框架&#xff1a;登陆、作品浏览、作品评分、作品查询、作品管理 &#xff08;2&#xff09;模块管理&#xff1a; ①登录模块&#xff1a;注册、登陆、退出 ②作品浏览&#xff1a;查看展示作品 ③作品管理&#xff1a;增加、删除&#xff0c;修…

谷沁清益生菌清口含片,守护口腔健康的第一道防线

根据第四次全国口腔健康流行病学调查显示&#xff0c;我国有高达97%的成人遭受口腔问题困扰。 在2022年发布的《全民口腔健康计划》口腔健康白皮书中&#xff0c;民众尤为突出的口腔问题为龋齿、牙周病。其中龋齿患病率高达67.5%&#xff0c;牙周疾病紧随其后&#xff0c;患病…

[开学季]ChatPaper全流程教程

文章目录 1. 粗筛&#xff1a;论文全文总结1.1 使用步骤&#xff1a; 1.2 功能描述&#xff1a;2. 论文问答&#xff1a;2. 精读&#xff1a;学术版GPT的论文翻译2.0 论文精读的正确姿势2.1 使用场景1&#xff1a;arxiv论文完美翻译2.2 本地PDF全文翻译&#xff1a;2.3 关于免费…

电容笔值不值得买?开学季比较好用的电容笔

眼看着新学期即将到来&#xff0c;到底应该选择什么样的电容笔&#xff1f;一款原装的苹果Pencil&#xff0c;就卖到了将近一千块&#xff0c;这对于很多人来说&#xff0c;都是一个十分昂贵的价格。事实上&#xff0c;由于平替电容笔的价格非常便宜&#xff0c;只要一二百元就…

PowerBI - 匹配并从另一个表中获取值

我有 2 个表通过列 A 相互连接。我想将列 C 与列 A 匹配并获得列 B 的值。 DAX 函数是 LOOKUPVALUE . MatchedOutput LOOKUPVALUE(Table2[ColB],Table2[ColA],Table1[ColC])这将查找 Table2[ColB] 中的值哪里Table2[ColA]匹配 Table1[ColC] .

vue中v-for循环数组使用方法中splice删除数组元素(错误:每次都删掉点击的下面的一项)

总结&#xff1a;平常使用v-for的key都是使用index&#xff0c;这里vue官方文档也不推荐&#xff0c;这个时候就出问题了&#xff0c;我们需要key为唯一标识&#xff0c;这里我使用了时间戳&#xff08;new Date().getTime()&#xff09;处理比较复杂的情况&#xff0c; 本文章…

string类的模拟实现——模拟的技巧

前言 对于学习STL而言&#xff0c;最重要的手段之一就是亲手模拟实现一个自己的容器。string存储只为char类型&#xff0c;且操作上并没有很难的操作。因此对于初学者而言&#xff0c;string是一个很好的练手项目。 一、确定思路 虽说相对适合初学者模拟实现&#xff0c;但是…

.net 7 隐藏swagger的api

1.写一个隐藏接口特性表示 using Microsoft.AspNetCore.Mvc.ApiExplorer; using Microsoft.OpenApi.Models; using Swashbuckle.AspNetCore.SwaggerGen;using System.Web.Http.Description;namespace JiaTongInterface.Filter {public class SwaggerApi : Swashbuckle.AspNet…