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...
【标题】:“VB硬件信息检测工具源码”是一款基于Visual Basic(VB)编程语言开发的软件,用于获取和展示计算机系统的各种硬件信息。这个工具在早期就已经存在,尽管现在可能有更多先进和功能丰富的同类软件,但对于...
小弟初学java,最近用swing写了这个小截图工具 迫于技术实在太差,很多效果不知道如何实现 欢迎大家“批驳”,呵呵 附上QQ:258801127 希望和各位网友一同进步 源代码可以直接导入eclipse
JAVA学生成绩管理系统(附源码 毕业设计 课程设计) 可直接运行。做毕业设计、课程设计或者想研究下技术的可以下载学习。需要更多资源的可以关注我。
《Java版植物大战僵尸游戏完整项目源码解析与学习指南》 在编程世界中,将经典游戏移植到不同平台是一项常见的挑战。Java作为一种跨平台、面向对象的编程语言,其强大的可移植性和丰富的库资源使其成为开发游戏的...
Java编程语言中有许多工具类库,它们为开发者提供了丰富的功能,极大地提高了开发效率。这些工具类通常包含了各种实用方法,可以处理字符串、集合、日期时间、数学计算等常见任务。以下是一些Java中常见的工具类及其...
【标题】"java视频电影电视剧播放网站源码"所涉及的知识点主要集中在Java编程语言、Web开发、数据库设计以及多媒体内容的在线播放技术。这个标题表明我们正在讨论一个基于Java实现的在线影视平台,该平台能够播放...
本文将深入探讨如何使用C#编程语言开发一个类似于QQ截图功能的屏幕截图工具,并提供完整的源码分析。 首先,我们要了解屏幕截图的基本原理。在Windows操作系统中,我们可以利用Graphics类和Bitmap类来获取并保存...
在本项目中,QQ屏幕截图工具的JAVA源码是实现其功能的核心部分。源码是程序员用JAVA语言编写的原始代码,通过这些代码,我们可以了解到截图工具的工作原理和实现细节。JAVA源码通常包含类、方法和变量定义,以及控制...
Android应用源码-系统工具类安卓源代码(82例): Android Email程序源码 Android i-jetty开源项目 Android ListView分页功能源码 Android Mp3标签提取器源码 Android OpenGL 3D 立方体多纹理贴图源码 Android ...
2. **Java对对碰按钮版(最终版)**: - GUI组件的布局管理,如GridBagLayout或GridLayout。 - 图片资源的加载和显示,可能涉及ImageIcon类。 - 随机算法实现元素的随机排列。 - 检测并处理匹配元素的消除逻辑,...
自己用的手提屏幕最近多了两个亮点,上网找了好几个液晶亮点修复工具,功能还是蛮多的,只是大部分都需要安装。net framework,或者要打开某个网站,用起来比较麻烦。个人比较喜欢用绿色版的软件,所以就干脆自己做...
java版微信三级分销完整源码 运行环境: myeclipse、MYsql 其他说明:网络上没有找到过的java版本分销系统,已包含所有的包,配置数据库文件即可直接使用。
用JAVA编写了一个小工具,用于检测当前显示器也就是显卡的显示模式,比如分辨率,色彩以及刷新频率等。 Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字 Java波浪文字,一个利用...
Java版数据结构与算法视频教程(44集版),附源码资料 目录找不到 讲的很详细
疯狂Java讲义第二版配套光盘中的源码。 ------------------------------------------- 《疯狂Java讲义》 配书光盘 版权所有,侵权必究 2011年12月 _____________________________________________________...
Java JDK 7是Java开发工具包的一个重要版本,它包含了Java语言的核心库和其他必要的开发工具。这个压缩包文件包含的源代码是Java JDK 7的核心组件,对于理解Java语言的内部工作原理、学习和调试Java程序非常有帮助。...
Head First 设计模式(中文完整版+附书源码 c# java Head First 设计模式(中文版) pdf 《Head First 设计模式》附书源码 《Head First 设计模式》附书源码(C#版) zip 《Head First 设计模式》附书源码(Java版)...