`
skewen
  • 浏览: 74865 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

(java版)屏幕亮点检测工具,附源码,贴图

阅读更多

1:主类

package screen;

import java.awt.Color;
import java.awt.Container;
import java.awt.Cursor;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Toolkit;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.Timer;
import javax.swing.UIManager;

public class NewScreen {
	/**
	 * @author Skewen
	 * @address ChengDu
	 * @category JavaSwing
	 * @date 2010-5-16
	 */
	private static final long serialVersionUID = 1L;
	private Container con = null;
	private JLabel testLabel = null;
	private JLabel autoLabel = null;
	private JLabel neusoft = null;
	private JLabel helpLabel=null;
	private JFrame frame = null;
	private Color[] colors = { Color.WHITE, Color.BLACK, Color.RED, Color.blue,
			Color.GREEN, Color.YELLOW, Color.darkGray, Color.ORANGE };
	private int i = 0;
	private Timer timer = null;
	private Boolean mark = true;
	private Font font = null;
	private Cursor cursor = null;
	private Dimension dimension = null;
	private JLabel[] labels = new JLabel[4];

	public NewScreen() {
		frame = new JFrame("显示器测试");
		con = frame.getContentPane();

		font = new Font("宋体", Font.PLAIN, 25);
		cursor = new Cursor(Cursor.HAND_CURSOR);
		dimension = Toolkit.getDefaultToolkit().getScreenSize();
		int width = (int) dimension.getWidth();
		int height = (int) dimension.getHeight();

		testLabel = new JLabel("Exit");
		autoLabel = new JLabel("AutoTest");
		
		neusoft = new JLabel("Author:skewen");
		neusoft.setForeground(Color.black);
		helpLabel=new JLabel("Help");
		autoLabel.setToolTipText("按回车键开始自动测试!");
		

		labels[0] = testLabel;
		labels[1] = autoLabel;
		labels[2] = neusoft;
		labels[3] = helpLabel;

		testLabel.setFont(font);
		autoLabel.setFont(font);
		neusoft.setFont(font);
		helpLabel.setFont(font);
		testLabel.setCursor(cursor);
		autoLabel.setCursor(cursor);
		neusoft.setCursor(cursor);
		helpLabel.setCursor(cursor);

		testLabel.addMouseListener(new MouseAdapter() {
			public void mouseClicked(MouseEvent e) {
				System.exit(0);

			}

		});
		helpLabel.addMouseListener(new MouseAdapter() {
			public void mouseClicked(MouseEvent e) {
				JOptionPane.showMessageDialog(frame, "1:在屏幕任意位置单击可以进行测试!\n2:点击AutoTest或者按Enter键可自动对屏幕检测!\n" +
						"3:点击Stop AutoTest或者按Space键可停止自动对屏幕检测!\n4:点击Exit或者按Esc键可退出系统!", "帮助",JOptionPane.INFORMATION_MESSAGE);

			}

		});
		autoLabel.addMouseListener(new MouseAdapter() {
			public void mouseClicked(MouseEvent e) {
				if (mark) {
					timer.start();
					autoLabel.setText("Stop AutoTest");
					autoLabel.setToolTipText("按空格键终止自动测试!");
					mark = false;
				} else {
					timer.stop();
					autoLabel.setText("AutoTest");
					autoLabel.setToolTipText("按回车键开始自动测试!");
					mark = true;

				}

			}

		});
		
		neusoft.addMouseListener(new MouseAdapter() {   
			  
            public void mouseClicked(MouseEvent e) {   
                try {   
                    Runtime.getRuntime().exec("cmd.exe /c start " + "http://skewen.iteye.com");   
                } catch (Exception ex) {   
                    ex.printStackTrace();   
                }   
            }   
        });   

		frame.setLayout(null);

		con.add(testLabel);
		con.add(autoLabel);
		con.add(neusoft);
		con.add(helpLabel);
		helpLabel.setBounds(100, height - 100,60, 50);
		testLabel.setBounds(width - 120, height - 100, 100, 50);
		autoLabel.setBounds(width / 2 - 100, height / 2 - 25, 180, 50);
		neusoft.setBounds(width / 2 - 100, height - 100, 200, 50);
		con.addMouseListener(new MouseAdapter() {
			public void mouseClicked(MouseEvent e) {
				i = (i % 7);
				con.setBackground(colors[i + 1]);
				testLabel.setForeground(colors[i]);
				autoLabel.setForeground(colors[i]);
				neusoft.setForeground(colors[i]);
				helpLabel.setForeground(colors[i]);
				i++;

			}

		});
		timer = new Timer(1300, new MyListener(con, colors, labels));
		frame.addKeyListener(new KeyAdapter() {

			@Override
			public void keyPressed(KeyEvent e) {
				// TODO Auto-generated method stub
				if (e.getKeyCode() == KeyEvent.VK_ESCAPE) {
					System.exit(0);

				} else if (e.getKeyCode() == KeyEvent.VK_ENTER) {
					if (mark) {
						timer.start();
						autoLabel.setText("Stop AutoTest");
						mark = false;
					}
				} else if (e.getKeyCode() == KeyEvent.VK_SPACE) {
					if (!mark) {
						timer.stop();
						autoLabel.setText("AutoTest");
						mark = true;
					}
				}
			}

		});

		frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.setUndecorated(true);
		frame.setVisible(true);

	}

	public static void main(String[] args) {
		try {
			UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
		} catch (Exception e) {
			e.printStackTrace();
		}
		new NewScreen();
	}

}

 

2:用于自动测试的一个事件类:

package screen;

import java.awt.Color;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JLabel;

public class MyListener implements ActionListener {
	/**
	 * @author Skewen
	 * @address ChengDu
	 * @category JavaSwing
	 * @date 2010-5-16
	 */
	private Container con=null;
	private Color[] colors =null;
	int i = 0;
	private JLabel[] labels;
	public MyListener(Container con,Color[] colors,JLabel[] labels){
		this.con=con;
		this.colors=colors;
		this.labels=labels;
		
	}

	@Override
	public void actionPerformed(ActionEvent e) {
		// TODO Auto-generated method stub
		i = i % 7;
		con.setBackground(colors[i+1]);
		labels[0].setForeground(colors[i]);
		labels[1].setForeground(colors[i]);
		labels[2].setForeground(colors[i]);
		labels[3].setForeground(colors[i]);
		
		i++;

	}

}

 

 

 

 

  • 大小: 7 KB
  • 大小: 9.1 KB
  • 大小: 9 KB
分享到:
评论

相关推荐

    java源码包---java 源码 大量 实例

     用JAVA编写了一个小工具,用于检测当前显示器也就是显卡的显示模式,比如分辨率,色彩以及刷新频率等。 Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字  Java波浪文字,一个利用...

    手机配置在线检测工具微信小程序源码

    手机配置在线检测工具微信小程序源码 手机配置在线检测工具微信小程序源码 手机配置在线检测工具微信小程序源码 手机配置在线检测工具微信小程序源码 手机配置在线检测工具微信小程序源码 手机配置在线检测工具微信...

    基于java的开发源码-Oracle数据库工具 WARTS.zip

    基于java的开发源码-Oracle数据库工具 WARTS.zip 基于java的开发源码-Oracle数据库工具 WARTS.zip 基于java的开发源码-Oracle数据库工具 WARTS.zip 基于java的开发源码-Oracle数据库工具 WARTS.zip 基于java的开发...

    一款VB硬件信息检测工具源码

    【标题】:“VB硬件信息检测工具源码”是一款基于Visual Basic(VB)编程语言开发的软件,用于获取和展示计算机系统的各种硬件信息。这个工具在早期就已经存在,尽管现在可能有更多先进和功能丰富的同类软件,但对于...

    自制 Java Swing 屏幕截图工具 源码

    小弟初学java,最近用swing写了这个小截图工具 迫于技术实在太差,很多效果不知道如何实现 欢迎大家“批驳”,呵呵 附上QQ:258801127 希望和各位网友一同进步 源代码可以直接导入eclipse

    java源码:密钥管理工具 Keytool-IUI.zip

    java源码:密钥管理工具 Keytool-IUI.zip

    基于Java的Android手机屏幕光影控制工具设计源码

    该项目是一款基于Java的Android手机屏幕光影控制工具设计源码,共包含114个文件,包括37个类文件、33个PNG图片文件、21个XML布局文件、8个Java源文件、3个JAR库文件、2个属性文件以及1个项目配置文件等。该工具专为...

    JAVA学生成绩管理系统(附源码 毕业设计 课程设计)

    JAVA学生成绩管理系统(附源码 毕业设计 课程设计) 可直接运行。做毕业设计、课程设计或者想研究下技术的可以下载学习。需要更多资源的可以关注我。

    Java版的植物大战僵尸游戏完整项目源码(含图片素材)

    《Java版植物大战僵尸游戏完整项目源码解析与学习指南》 在编程世界中,将经典游戏移植到不同平台是一项常见的挑战。Java作为一种跨平台、面向对象的编程语言,其强大的可移植性和丰富的库资源使其成为开发游戏的...

    基于Java语言的模拟reg007功能的网站撞库检测工具设计源码

    该项目是一款基于Java语言的网站撞库检测工具设计源码,旨在模拟reg007网站的功能,帮助用户查询特定邮箱或手机号注册过的网站信息。源码包含467个文件,其中461个为Java源文件,3个为属性文件,1个为Git忽略文件,...

    基于java开发的温湿度检测项目+源码(期末大作业&课程设计&项目开发)

    基于java开发的温湿度检测项目+源码,适合期末大作业、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~ 基于java开发的温湿度检测项目+源码,适合期末大作业、课程设计、项目开发...

    java 制作的企业网站源码

    java源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码...源码源码源码源码源码源码源码源码源码源码源码源码源码源码源码java...

    java源码包3

     用JAVA编写了一个小工具,用于检测当前显示器也就是显卡的显示模式,比如分辨率,色彩以及刷新频率等。 Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字  Java波浪文字,一个利用...

    JAVA项目 Web源码 都市供求信息网 (内附使用说明+源码)

    JAVA项目 Web源码 都市供求信息网 (内附使用说明+源码)JAVA项目 Web源码 都市供求信息网 (内附使用说明+源码)JAVA项目 Web源码 都市供求信息网 (内附使用说明+源码)JAVA项目 Web源码 都市供求信息网 (内附...

    C#屏幕截图工具及源码

    本文将深入探讨如何使用C#编程语言开发一个类似于QQ截图功能的屏幕截图工具,并提供完整的源码分析。 首先,我们要了解屏幕截图的基本原理。在Windows操作系统中,我们可以利用Graphics类和Bitmap类来获取并保存...

    QQ屏幕截图工具BS(JAVA源码+论文+视频齐全)

    在本项目中,QQ屏幕截图工具的JAVA源码是实现其功能的核心部分。源码是程序员用JAVA语言编写的原始代码,通过这些代码,我们可以了解到截图工具的工作原理和实现细节。JAVA源码通常包含类、方法和变量定义,以及控制...

    java视频电影电视剧播放网站源码

    【标题】"java视频电影电视剧播放网站源码"所涉及的知识点主要集中在Java编程语言、Web开发、数据库设计以及多媒体内容的在线播放技术。这个标题表明我们正在讨论一个基于Java实现的在线影视平台,该平台能够播放...

    JAVA源码类似QQ的聊天软件JAVA版源码(附设计文档)

    JAVA源码类似QQ的聊天软件JAVA版源码(附设计文档)

    15个java小游戏源码合集

    2. **Java对对碰按钮版(最终版)**: - GUI组件的布局管理,如GridBagLayout或GridLayout。 - 图片资源的加载和显示,可能涉及ImageIcon类。 - 随机算法实现元素的随机排列。 - 检测并处理匹配元素的消除逻辑,...

Global site tag (gtag.js) - Google Analytics