📄 commandexecuter.java
字号:
package com.topking.rt.rmi.server.util;
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
import java.awt.event.MouseWheelEvent;
import com.topking.rt.data.Command;
public class CommandExecuter {
private static Robot robot = CommandExecuter.getRobot();
public static void execute(Command com){
InputEvent event = com.getEvent();
MouseEvent mevent = null;
MouseWheelEvent mwevent = null;
KeyEvent kevent = null;
int mousebuttonmask = -100;
switch(event.getID()){
case MouseEvent.MOUSE_MOVED:
mevent = (MouseEvent)event;
robot.mouseMove(mevent.getX(), mevent.getY());
break;
case MouseEvent.MOUSE_PRESSED:
mevent = (MouseEvent)event;
robot.mouseMove(mevent.getX(), mevent.getY());
mousebuttonmask = getMouseButtonMask(mevent.getButton());
if(mousebuttonmask!=-100){
robot.mousePress(mousebuttonmask);
}
break;
case MouseEvent.MOUSE_RELEASED:
mevent = (MouseEvent)event;
robot.mouseMove(mevent.getX(), mevent.getY());
mousebuttonmask = getMouseButtonMask(mevent.getButton());
if(mousebuttonmask!=-100){
robot.mouseRelease(mousebuttonmask);
}
break;
case MouseEvent.MOUSE_WHEEL:
mwevent = (MouseWheelEvent)event;
robot.mouseWheel(mwevent.getWheelRotation());
break;
case MouseEvent.MOUSE_DRAGGED:
mevent = (MouseEvent)event;
robot.mouseMove(mevent.getX(), mevent.getY());
break;
case KeyEvent.KEY_PRESSED:
kevent = (KeyEvent)event;
robot.keyPress(kevent.getKeyCode());
break;
case KeyEvent.KEY_RELEASED:
kevent = (KeyEvent)event;
robot.keyRelease(kevent.getKeyCode());
break;
default :break;
}
}
private static Robot getRobot(){
if(robot==null){
try {
robot = new Robot();
} catch (AWTException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return robot;
}
private static int getMouseButtonMask(int button){
if(button==MouseEvent.BUTTON1)
return InputEvent.BUTTON1_MASK;
if(button==MouseEvent.BUTTON3)
return InputEvent.BUTTON3_MASK;
return -100;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -