java里的MouseLisetener接口的使用过程==========需要用组件是来注册侦听器
总结:通过匿名类来实现鼠标的监听或者 通过实现接口的方法都可以的
从此是实现MouseListener接口的方式
package com.a.b; import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Paint;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.util.Random;
///练习监听的
import javax.swing.*;//
//实现鼠标双击时画圆,运用画图
class Shape extends JFrame implements MouseListener { //设置图形的坐标
int x,y;
public Shape(){
JLabel jl=new JLabel("你是我的信仰");
jl.setForeground(Color.yellow);
JLabel jl2=new JLabel("你是冬天里的太阳");
jl2.setForeground(Color.red);
JPanel jp=new JPanel();
//看到冒这些字体什么都没显示在fraem
jp.add(jl2);
jp.add(jl);
jp.setBackground(Color.green);//设置frame的背景色 this.add(jp);
this.setBounds(100, 200, 500, 500);
this.setDefaultCloseOperation(3);
//ini();
this.setVisible(true);
this.addMouseListener(this);//要想实现鼠标事件,必须先要注册事件侦听器,然后调用接口里的MouseClicked方法
}
Random r=new Random(); public void paint(Graphics g) {//////////我终于明白了,这个画图的方法不是普通的方法,是自带的,小写的才可以被自动调用
g.setColor(new Color(r.nextInt(255),r.nextInt(255),r.nextInt(255)));//否则是根本画不出来图形
//画圆。长方形,椭圆。直线。实心圆
g.fillOval(x, y, 44, 44);//实心圆
g.drawOval(x, y-32, 32, 32);//空心圆
//g.drawRect( x, y-22, 55,55);
g.drawLine(x, y, 44, 44);//这是一条直线
g.drawString("hello world!!!", 300, 300);
} @Override
public void mouseClicked(MouseEvent e) {
if(e.getClickCount()>=3){ x=e.getX();
y=e.getY();
repaint();
}
} @Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub } @Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub } @Override
public void mouseEntered(MouseEvent e) {
// TODO Auto-generated method stub } @Override
public void mouseExited(MouseEvent e) {
// TODO Auto-generated method stub } } public class Tuxing {
public static void main(String[] args) {
new Shape();
}
}
java里的MouseLisetener接口的使用过程==========需要用组件是来注册侦听器的更多相关文章
- Java彻底 - WEB容器的侦听具体解释 ServletContextListener
WEB容器的侦听器ServletContextListener主要用于监测容器启动和 当破坏需要做一些操作,听众将能够使用此做. ServletContextListener在Spring开始,然后再 ...
- 【java】聊聊java里的接口
接口的概念 java中的接口用于描述类应该具备什么样的功能,而不给出具体的实现,一个类可以“实现”多个接口 [注意]接口不是类,而是对类的一组描述 还是让我们通过一个例子来看看接口如何运作吧! ...
- Java命名和目录接口——JNDI
JNDI即Java命名和目录接口(JavaNaming and Directory Interface),它属于J2EE规范范畴,是J2EE的核心技术之一,提供了一组接口.类和关于命名空间的概念.JD ...
- Java内存管理的进一步理解-模拟过程图解
Java内存管理的进一步理解-模拟过程图解--转载 java的内存管理分为: 1.堆内存:2.栈内存:3.方法区:4.本地方法区 /* 1:方法区 方法区存放装载的类数据信息包括: ...
- Java 里如何实现线程间通信(转载)
出处:http://www.importnew.com/26850.html 正常情况下,每个子线程完成各自的任务就可以结束了.不过有的时候,我们希望多个线程协同工作来完成某个任务,这时就涉及到了线程 ...
- Java 里如何实现线程间通信
正常情况下,每个子线程完成各自的任务就可以结束了.不过有的时候,我们希望多个线程协同工作来完成某个任务,这时就涉及到了线程间通信了. 本文涉及到的知识点:thread.join(), object.w ...
- 【转】Java里如何实现线程间通信
正常情况下,每个子线程完成各自的任务就可以结束了.不过有的时候,我们希望多个线程协同工作来完成某个任务,这时就涉及到了线程间通信了. 本文涉及到的知识点:thread.join(), object.w ...
- java里的锁总结(synchronized隐式锁、Lock显式锁、volatile、CAS)
一.介绍 首先, java 的锁分为两类: 第一类是 synchronized 同步关键字,这个关键字属于隐式的锁,是 jvm 层面实现,使用的时候看不见: 第二类是在 jdk5 后增加的 Lock ...
- 小谈Java里的线程
今天,我们来谈一谈Java里的线程. 一.进程与线程的基本概念 大家可能没听过线程这个概念,但是相信,用计算机的朋友都听过进程这个概念.打开电脑的任务管理器,我们就可以看到许多进程.它们主要分为三类, ...
随机推荐
- JavaWeb -- Struts2 验证框架
1. 验证框架 示例 表单提交Jsp, reg.jsp <%@ page language="java" contentType="text/html; chars ...
- window cmd
切换目录盘 直接 d: (e: f:) 在目录下切换文件用cd 文件名(可以加绝对路径 绝对路径可以到复制 也可以加相对路径) javac XXX.java 编译成字节码 Ja ...
- Java泛型中的标记符含义
Java泛型中的标记符含义: E - Element (在集合中使用,因为集合中存放的是元素) T - Type(Java 类) K - Key(键) V - Value(值) N - Number ...
- shell awk使用(转)
#####awk " 对每一行操作的代码块" 操作的文件 awk -F: '{print $1,$2,$3,$4,$5}' helloworld.sh 打印字段 ...
- 【Hive】数据类型
1.基本类型 整型:tinyint / samllint / int / bigint 浮点型:float / double / Decimals 布尔型:boolean 字符串:string / v ...
- 关于 SimpleDateFormat 的非线程安全问题及其解决方案
一直以来都是直接用SimpleDateFormat开发的,没想着考虑线程安全的问题,特记录下来(摘抄的): 1.问题: 先来看一段可能引起错误的代码: package test.date; impor ...
- L137
Uncontacted Tribes at Risk Amid ‘Worrying' Surge in Amazon Deforestation Illegal loggers and militia ...
- New Concept English three (29)
1听力和打字训练: 31w/m 54 typing errors Whether we find a joke funny or not largely depends on were we have ...
- C#中upd分包与发送,已经实现全部代码
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Tool ...
- svg实现 圆形 点击扩大、消失
效果: 代码: <!DOCTYPE html> <html> <head lang="en"> <meta charset="U ...