俊星的BLOG
导航
BlogJava
首页
新随笔
联系
聚合
管理
<
2009年6月
>
日
一
二
三
四
五
六
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
统计
随笔 - 50
文章 - 0
评论 - 6
引用 - 0
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(1)
给我留言
查看公开留言
查看私人留言
随笔分类
代码库(7)
(rss)
随笔档案
2010年11月 (3)
2010年10月 (12)
2009年6月 (5)
2009年5月 (22)
2009年4月 (8)
最新随笔
1. 实现变更统计
2. 切换IE8中碰到的问题
3. 发布FWMS
4. ActiveMQ初探
5. CAS初步配置
搜索
最新评论
1. re: JAVA图像缩放处理[未登录]
不错的方法
--test
2. re: freetts初探
学习了! 就是不清楚为啥在eclipse下跑不起来...
--apiao
3. re: freetts初探
System property "mbrola.base" is undefined. Will not use MBROLA voices.
这个问题怎么解决啊?
--珑儿
4. re: ActiveMQ初探
测试通过。多谢
--71569973
5. 登录网站
评论内容较长,点击标题查看
--ahome
阅读排行榜
1. ftp的port和pasv模式(转)(8024)
2. JAVA图像缩放处理(4174)
3. Nutz初步试用(4104)
4. Window下FTP命令使用(3508)
5. freetts初探(3407)
6. ActiveMQ初探(2898)
7. MYSQL Access denied 问题的解决(2340)
8. HTTP Client及HTTPS初探(1981)
9. JAVA单向加密(MD5,SHA,MAC)(1262)
10. CAS认证初探(1147)
评论排行榜
1. freetts初探(2)
2. HTTP Client及HTTPS初探(2)
3. ActiveMQ初探(1)
4. JAVA图像缩放处理(1)
5. 我的DWR之DefaultContainer(0)
SWT试用之控制鼠标键盘
通过SWT可以控制鼠标键盘事件,具体如下:
import
org.eclipse.swt.SWT;
import
org.eclipse.swt.widgets.Display;
import
org.eclipse.swt.widgets.Event;
import
org.eclipse.swt.widgets.Shell;
import
org.eclipse.swt.widgets.Text;
/** */
/**
* 预期的运行效果为:显示开始菜单
*
@author
kinkding
* @history 2009-6-2
*/
public
class
MyEventRes
{
public
static
void
main(String[] args)
{
final
Display display
=
new
Display();
final
Shell shell
=
new
Shell(display);
final
Text text
=
new
Text(shell, SWT.BORDER);
text.setSize(text.computeSize(
150
, SWT.DEFAULT));
text.setText(
"
神一样的人啊!
"
);
shell.pack();
shell.open();
new
KeyThread(display).start();
//
键盘响应
//
new MouseThread(display).start();
//
鼠标响应
while
(
!
shell.isDisposed())
{
if
(
!
display.readAndDispatch())
display.sleep();
}
display.dispose();
}
}
class
MouseThread
extends
Thread
{
Display display;
int
h;
public
MouseThread(Display display)
{
this
.display
=
display;
h
=
display.getPrimaryMonitor().getBounds().height;
}
public
void
run()
{
Event event
=
new
Event();
//
移动鼠标
event.type
=
SWT.MouseMove;
event.x
=
5
;
event.y
=
h
-
5
;
display.post(event);
try
{
Thread.sleep(
100
);
}
catch
(InterruptedException e)
{
}
//
按下右键
event.type
=
SWT.MouseDown;
event.button
=
1
;
display.post(event);
try
{
Thread.sleep(
100
);
}
catch
(InterruptedException e)
{
}
//
恢复
event.type
=
SWT.MouseUp;
display.post(event);
}
}
class
KeyThread
extends
Thread
{
Display display;
int
h;
public
KeyThread(Display display)
{
this
.display
=
display;
h
=
display.getPrimaryMonitor().getBounds().height;
}
public
void
run()
{
Event event
=
new
Event();
//
按下CTRL
event.type
=
SWT.KeyDown;
event.keyCode
=
SWT.CTRL;
display.post(event);
try
{
Thread.sleep(
100
);
}
catch
(InterruptedException e)
{
}
//
按下ESC
event.type
=
SWT.KeyDown;
event.keyCode
=
SWT.ESC;
display.post(event);
try
{
Thread.sleep(
100
);
}
catch
(InterruptedException e)
{
}
//
恢复
event.type
=
SWT.KeyUp;
event.keyCode
=
SWT.CTRL;
display.post(event);
try
{
Thread.sleep(
100
);
}
catch
(InterruptedException e)
{
}
event.type
=
SWT.KeyUp;
event.keyCode
=
SWT.ESC;
display.post(event);
}
}
posted on 2009-06-02 00:15
俊星
阅读(812)
评论(0)
编辑
收藏
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
Powered by:
BlogJava
Copyright © 俊星