只是用来练练监听事件,请忽视程序中可爱的图片。。。。。

import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.Point;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowFocusListener;
import java.awt.event.WindowListener;
import java.awt.event.WindowStateListener;import javax.swing.ImageIcon;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.WindowConstants;public class test extends JFrame{JLabel[] mouses = new JLabel[5];JLabel chuizi = new JLabel();JLabel chuizi_down = new JLabel();ImageIcon icon = new ImageIcon(getClass().getResource("ii.jpg"));ImageIcon icon_up = new ImageIcon(getClass().getResource("up.png"));ImageIcon icon_down = new ImageIcon(getClass().getResource("down.png"));public test(){getContentPane().setLayout(null); int x = icon.getIconWidth(),y = icon.getIconHeight();chuizi.setIcon(icon_up);chuizi.setSize(icon_up.getIconWidth(), icon_up.getIconHeight());getContentPane().add(chuizi);chuizi_down.setIcon(icon_down);chuizi_down.setSize(icon_down.getIconWidth(), icon_down.getIconHeight());addMouseMotionListener(new MouseMotionListener() {@Overridepublic void mouseMoved(MouseEvent arg0) {// TODO Auto-generated method stubchuizi.setLocation(arg0.getX(), arg0.getY());chuizi_down.setLocation(arg0.getX(), arg0.getY());}@Overridepublic void mouseDragged(MouseEvent arg0) {// TODO Auto-generated method stub}});for(int i = 0;i < 4; i++){mouses[i] = new JLabel();mouses[i].setSize(x, y);mouses[i].setIcon(icon);mouses[i].addMouseListener(new MouseListener() {@Overridepublic void mouseReleased(MouseEvent arg0) {// TODO Auto-generated method stubchuizi.setIcon(icon_up);chuizi_down.setIcon(null);}@Overridepublic void mousePressed(MouseEvent arg0) {// TODO Auto-generated method stubgetContentPane().add(chuizi_down);chuizi_down.setIcon(icon_down);chuizi.setIcon(null);}@Overridepublic void mouseExited(MouseEvent arg0) {// TODO Auto-generated method stub}@Overridepublic void mouseEntered(MouseEvent arg0) {// TODO Auto-generated method stub}@Overridepublic void mouseClicked(MouseEvent arg0) {// TODO Auto-generated method stubObject source = arg0.getSource();if(source instanceof JLabel){JLabel mouse = (JLabel)source;mouse.setIcon(null);}}});getContentPane().add(mouses[i]);}mouses[0].setLocation(50, 100);mouses[1].setLocation(450, 100);mouses[2].setLocation(50, 400);mouses[3].setLocation(450, 400);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setVisible(true);setSize(1000,1000);run();}public void run(){while(true){try {Thread.sleep(1000);int index = (int)(Math.random() * 4);if(mouses[index].getIcon() == null){mouses[index].setIcon(icon);}} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();} }}public static void main(String[] agrs){new test();}
}

JAVA之简陋打地鼠(监听事件的练习)相关推荐

  1. 【java】画图和监听事件的应用

    [java]画图和监听事件的应用 (1)frame.getContentPane().add(new Change()); ***用getContentPane()方法获得JFrame的内容面板,再对 ...

  2. java gui 监听组合键,Java之GUI按钮监听事件ActionListener

    /** * ActionListener:按钮监听事件 * @author Administrator */ public class ActionListenerDemo{ public stati ...

  3. java 文本框输入监听事件_JAVA GUI 事件监听事件 详解 和 案例.

    GUI(图形用户界面) Graphical User Interface(图形用户接口) 用图形的 方式, 来显示 计算机操作的 界面, 这样更方便 更直观. CLI Command Line Use ...

  4. java之Hibenate中监听事件的重写和二级cache缓存

    管理缓存和统计缓存 Cache cache  = sessionFactory.getCache(); //清除指定的News对象 cache.evictEntity(News.class, id); ...

  5. java鼠标改变窗口大小监听事件_java – 当用户拖动鼠标时,监听JFrame调整事件大小?...

    当用户单击JFrame的角落来调整大小并拖动鼠标时,JFrame会根据用户拖动时鼠标的当前位置重绘.你怎么听这些事件? 下面是我目前尝试的: public final class TestFrame ...

  6. AWT_addMouseListener鼠标监听事件(Java)

    AWT_addMouseListener鼠标监听事件(Java) package reflect;import java.awt.*; import java.awt.event.MouseAdapt ...

  7. Java之GUI编程学习笔记六 —— AWT相关(画笔paint、鼠标监听事件、模拟画图工具)

    Java之GUI编程学习笔记六 -- AWT相关(画笔paint) 参考教程B站狂神https://www.bilibili.com/video/BV1DJ411B75F 了解paint Frame自 ...

  8. java图形界面的监听_非专业码农 JAVA学习笔记 用户图形界面设计与实现-所有控件的监听事件...

    用户图形界面设计与实现-监听事件 System.applet.Applet (一)用户自定义成分 1.绘制图形 Public voit piant(Ghraphics g){  g.drawLine等 ...

  9. java/05/(Swing包)窗体,组件,布局管理器,面板,监听事件

    java/05/Swing包(窗体) Swing特点: 原来的AWT组件来自java.awt包,当含有AWT组件的java应用程序在不同的平台上执行时,每个平台的GUI组件的显示会有所不同,但是在不同 ...

最新文章

  1. c# 非阻塞算法_c#创建非阻塞tcp通信
  2. 为了熟悉再一次的配置Postfix
  3. 第二阶段冲刺第六天(6月5号)
  4. P2339 提交作业usaco
  5. Docker(六):Docker 三剑客之 Docker Swarm
  6. 用户体验中巧妙的过场动画
  7. iphone7wifi模块多少钱_模块炉价格参差不齐,消费者应独具慧眼!
  8. unity 创建图片ui_在 Unity中 将游戏数据储存至本地文档
  9. NO--15 微信小程序,scroll-view选项卡和跳转
  10. python旋转matplotlib绘制的三维图
  11. html+cs入门实例,CS50 HTML和CSS基础(介绍最简单的HTML和CSS)
  12. 解决精简版GhostXP或WIN7中木有超级终端及打开超级终端无图标的问题
  13. Struts 2的基石——拦截器(Interceptor)详细讲解
  14. 如何在线压缩图片?图片太大了如何改小kb?
  15. ipad 视频播放器的渐变播放效果
  16. LiveQing云平台直播点播流媒体服务-产品介绍及相关资源
  17. openstack-M版,学习笔记六
  18. Latex中的实心原点
  19. PA=LU(带行交换的矩阵分解)
  20. a标签下载文件header中带上用于鉴权的token

热门文章

  1. python123查找指定字符输入m_python基础--2 字符串
  2. 编好c语言网上自动评测,C语言程序自动评测系统的设计与实现
  3. 一元函数微分学中的极限,可导,连续,可微的定义和理解
  4. Postgresql关于wal日志总结,一文搞清楚它的所有概念和相关操作
  5. 【附源码】计算机毕业设计java智能仓储设备管理系统设计与实现
  6. List集合 查询重复数据,查询重复次数
  7. 多元线性回归分析预测法概述
  8. 新Macbook入手后必安装的好用的软件
  9. 抖音接口安全参数X-Ladon、X-Argus计算过程分析
  10. about unit test in android ppt,选修5 unit4Learning about language.ppt