zoukankan      html  css  js  c++  java
  • 使用SWT模拟鼠标键盘事件

    最近在学习SWT/JFace,在做一个小东西的时候需要模拟鼠标键盘事件,在网上搜了一下,在java中模拟这些事件,主要有两种方法: 
    一、使用AWT中的Robot类
    Robot
    java.lang.Object
    java.awt.Robot

    --------------------------------------------------------------------------------

    public class Robotextends Object 此类用于为测试自动化、自运行演示程序和其他需要控制鼠标和键盘的应用程序生成本机系统输入事件。Robot 的主要目的是便于 Java 平台实现自动测试。类中几个主要的模拟函数如下:
    void keyPress(int keycode) 
              按下给定的键。 
     void keyRelease(int keycode) 
              释放给定的键。 
     void mouseMove(int x, int y) 
              将鼠标指针移动到给定屏幕坐标。 
     void mousePress(int buttons) 
              按下一个或多个鼠标按钮。 
     void mouseRelease(int buttons) 
              释放一个或多个鼠标按钮。 
     void mouseWheel(int wheelAmt) 
              在配有滚轮的鼠标上旋转滚轮。 

    二、使用SWT中的鼠标键盘事件 
        在SWT的snippets中有两个例子用来介绍这两个方法的使用,如下:

    (1)、模拟鼠标事件

    (2)、模拟键盘事件



    两种方法中都是先声明一个Event,然后将该Event的type类型设置为对应的SWT.KeyUp/KeyDown/MouseUp/MouseDown,最后通过Display类的post(Event)方法来模拟对应的事件。注意:如果有多个控件,需要得到对应控件的display属性,然后post该事件。例如,在一个窗口中有一个Browser,则需要使用thisClass.browser.getDisplay().post(event)。 

  • 相关阅读:
    我与solr(二)--导入mysql数据库
    Android 渐变效果
    希尔排序
    插入排序
    选择排序
    冒泡排序法
    QT仿QQ页面
    Colliding Mice
    QTablewidget通过代理实现限制输入
    QT绘制心形图案二
  • 原文地址:https://www.cnblogs.com/okuc/p/4149353.html
Copyright © 2011-2022 走看看