`
skewen
  • 浏览: 73071 次
  • 性别: 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源码

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

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

    类似QQ的聊天软件JAVA版源码附设计文档.rar1.68MB.rar

    类似QQ的聊天软件JAVA版源码附设计文档.rar1.68MB.rar 超经典,欢迎下载

    java swing所有组件展示 (附源码)

    java所有组件演示,帮助你开发桌面应用,绝对标准,物有所值。需要注意的是,看源码时尽量用打开工具打开,否则看起来很乱。

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

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

    java 制作的企业网站源码

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

    java源码包4

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

    java源码包3

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

    java源码包2

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

    JAVA上百实例源码以及开源项目

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

    坦克大战源码(Swing贴图)

    基于JAVA Swing的贴图版坦克大战,模仿红白机,只做了第一关,没有完全做完,读者有时间可自行完善

    Java Web项目企业事务管理系统源码

    Java Web项目企业事务管理系统源码,详细的代码注释 本系统的开发工具具体如下。 ● 系统开发平台:MyEclipse 6.5。 ● 数据库管理系统软件:MySQL 5.0。 ● 运行平台:Windows 2000/Windows XP/Windows 2003/...

    Java版数据结构与算法视频教程(44集版),附源码资料

    Java版数据结构与算法视频教程(44集版),附源码资料 目录找不到 讲的很详细

    java屏幕录像工具

    简单实用的java屏幕录像工具,源码,可直接实用或修改。

    Java开发的酒店管理系统源码

    Java开发的酒店管理系统源码 Java开发的酒店管理系统源码Java开发的酒店管理系统源码Java开发的酒店管理系统源码 Java开发的酒店管理系统源码Java开发的酒店管理系统源码Java开发的酒店管理系统源码 Java开发的酒店...

    28个java常用的工具类源码

    实战中有些代码直接套用就ok,不用动手了,会写代码的不一定是高手,但是高手一定是组织代码的老手!

    疯狂Java讲义第二版配套光盘源码

    疯狂Java讲义第二版配套光盘中的源码。 ------------------------------------------- 《疯狂Java讲义》 配书光盘 版权所有,侵权必究 2011年12月 _____________________________________________________...

    java版微信三级分销完整源码实例下载

    java版微信三级分销完整源码。我买别的源码,店家送的,我没测试过。

Global site tag (gtag.js) - Google Analytics