Java Robot按键模拟

运行方法,事先准备好一个空文档,然后运行程序,记得把输入法改为中文

import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;

public class robot {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		new robot();

	}
	
	public robot(){
	//保存需要按下的键
		int[] keys = {
		
		 KeyEvent.VK_CAPS_LOCK,KeyEvent.VK_D,
		 KeyEvent.VK_CAPS_LOCK,KeyEvent.VK_O,
		 KeyEvent.VK_SPACE,KeyEvent.VK_Y,
		 KeyEvent.VK_O,KeyEvent.VK_U,
		 KeyEvent.VK_SPACE,KeyEvent.VK_W,
		 KeyEvent.VK_A,KeyEvent.VK_N,
		 KeyEvent.VK_T,KeyEvent.VK_SPACE,
		 KeyEvent.VK_A,KeyEvent.VK_SPACE,
		 KeyEvent.VK_F,KeyEvent.VK_R,
		 KeyEvent.VK_I,KeyEvent.VK_E,KeyEvent.VK_N,
		 KeyEvent.VK_D,KeyEvent.VK_SPACE,
		 KeyEvent.VK_W,KeyEvent.VK_H,
		 KeyEvent.VK_O,KeyEvent.VK_M,
		 KeyEvent.VK_SPACE,KeyEvent.VK_Y,
		 KeyEvent.VK_O,KeyEvent.VK_U,
		 KeyEvent.VK_SPACE,KeyEvent.VK_C,
		 KeyEvent.VK_O,KeyEvent.VK_U,
		 KeyEvent.VK_L,KeyEvent.VK_D,
		 KeyEvent.VK_SPACE,KeyEvent.VK_T,
		 KeyEvent.VK_E,KeyEvent.VK_L,
		 KeyEvent.VK_L,KeyEvent.VK_SPACE,
		 KeyEvent.VK_E,KeyEvent.VK_V,
		 KeyEvent.VK_E,KeyEvent.VK_R,
		 KeyEvent.VK_Y,KeyEvent.VK_T,
		 KeyEvent.VK_H,KeyEvent.VK_I,
		 KeyEvent.VK_N,KeyEvent.VK_G,
		 KeyEvent.VK_SPACE,KeyEvent.VK_T,
		 KeyEvent.VK_O,KeyEvent.VK_COMMA,
		 KeyEvent.VK_SPACE,KeyEvent.VK_L,
		 KeyEvent.VK_I,KeyEvent.VK_K,
		 KeyEvent.VK_E,KeyEvent.VK_SPACE,KeyEvent.VK_Y,
		 KeyEvent.VK_O,KeyEvent.VK_U,
		 KeyEvent.VK_R,KeyEvent.VK_SPACE,
		 KeyEvent.VK_D,KeyEvent.VK_E,
		 KeyEvent.VK_E,KeyEvent.VK_P,
		 KeyEvent.VK_E,KeyEvent.VK_S,
		 KeyEvent.VK_T,KeyEvent.VK_SPACE,KeyEvent.VK_F,
		 KeyEvent.VK_E,KeyEvent.VK_E,
		 KeyEvent.VK_L,KeyEvent.VK_I,
		 KeyEvent.VK_N,KeyEvent.VK_G,
		 KeyEvent.VK_S,KeyEvent.VK_SPACE,
		 KeyEvent.VK_A,KeyEvent.VK_N,
		 KeyEvent.VK_D,KeyEvent.VK_SPACE,
		 KeyEvent.VK_T,KeyEvent.VK_H,
		 KeyEvent.VK_O,KeyEvent.VK_U,
		 KeyEvent.VK_G,KeyEvent.VK_H,
		 KeyEvent.VK_T,KeyEvent.VK_S,KeyEvent.VK_SPACE,
		 KeyEvent.VK_SPACE, KeyEvent.VK_CAPS_LOCK,
		 KeyEvent.VK_O, KeyEvent.VK_CAPS_LOCK,
		 KeyEvent.VK_R,KeyEvent.VK_SPACE,
		 KeyEvent.VK_A,KeyEvent.VK_R,
		 KeyEvent.VK_E,KeyEvent.VK_SPACE,
		 KeyEvent.VK_Y,KeyEvent.VK_O,
		 KeyEvent.VK_U,KeyEvent.VK_SPACE,
		 KeyEvent.VK_A,KeyEvent.VK_F,
		 KeyEvent.VK_R,KeyEvent.VK_A,
		 KeyEvent.VK_I,KeyEvent.VK_D,
		 KeyEvent.VK_SPACE,KeyEvent.VK_T,
		 KeyEvent.VK_H,KeyEvent.VK_A,
		 KeyEvent.VK_T,KeyEvent.VK_SPACE,
		 KeyEvent.VK_Y,KeyEvent.VK_O,
		 KeyEvent.VK_U,KeyEvent.VK_R,
		 KeyEvent.VK_SPACE,KeyEvent.VK_F,
		 KeyEvent.VK_R,KeyEvent.VK_I,
		 KeyEvent.VK_E,KeyEvent.VK_N,
		 KeyEvent.VK_D,KeyEvent.VK_SPACE,
		 KeyEvent.VK_W,KeyEvent.VK_O,
		 KeyEvent.VK_U,KeyEvent.VK_L,
		 KeyEvent.VK_D,KeyEvent.VK_SPACE,
		 KeyEvent.VK_L,KeyEvent.VK_A,
		 KeyEvent.VK_U,KeyEvent.VK_G,
		 KeyEvent.VK_H,KeyEvent.VK_SPACE,
		 KeyEvent.VK_A,KeyEvent.VK_T,
		 KeyEvent.VK_SPACE,KeyEvent.VK_Y,
		 KeyEvent.VK_O,KeyEvent.VK_U,
		 KeyEvent.VK_COMMA,KeyEvent.VK_SPACE,
		 KeyEvent.VK_O,KeyEvent.VK_R,
		 KeyEvent.VK_SPACE,KeyEvent.VK_W,
		 KeyEvent.VK_O,KeyEvent.VK_U,
		 KeyEvent.VK_L,KeyEvent.VK_D,
		 KeyEvent.VK_SPACE,KeyEvent.VK_N,
		 KeyEvent.VK_O,KeyEvent.VK_T,
		 KeyEvent.VK_SPACE,KeyEvent.VK_U,
		 KeyEvent.VK_N,KeyEvent.VK_D,
		 KeyEvent.VK_E,KeyEvent.VK_R,
		 KeyEvent.VK_S,KeyEvent.VK_T,
		 KeyEvent.VK_A,KeyEvent.VK_N,
		 KeyEvent.VK_D,KeyEvent.VK_SPACE,
		 KeyEvent.VK_W,KeyEvent.VK_H,
		 KeyEvent.VK_A,KeyEvent.VK_T,
		 KeyEvent.VK_SPACE,KeyEvent.VK_Y,
		 KeyEvent.VK_O,KeyEvent.VK_U,
		 KeyEvent.VK_SPACE,KeyEvent.VK_A,
		 KeyEvent.VK_R,KeyEvent.VK_E,
		 KeyEvent.VK_SPACE,KeyEvent.VK_G,
		 KeyEvent.VK_O,KeyEvent.VK_I,
		 KeyEvent.VK_N,
		 KeyEvent.VK_G,KeyEvent.VK_SPACE,
		 KeyEvent.VK_T,KeyEvent.VK_H,
		 KeyEvent.VK_R,KeyEvent.VK_O,
		 KeyEvent.VK_U,KeyEvent.VK_G,
		 KeyEvent.VK_H,KeyEvent.VK_SPACE,KeyEvent.VK_CAPS_LOCK,
		 KeyEvent.VK_A,KeyEvent.VK_CAPS_LOCK,
		 KeyEvent.VK_N,KeyEvent.VK_N,
		 KeyEvent.VK_E,KeyEvent.VK_SPACE,
		 KeyEvent.VK_CAPS_LOCK,
		 KeyEvent.VK_F,KeyEvent.VK_CAPS_LOCK,
		 KeyEvent.VK_R,
		 KeyEvent.VK_A,KeyEvent.VK_N,
		 KeyEvent.VK_K,KeyEvent.VK_SPACE,
		 KeyEvent.VK_W,KeyEvent.VK_A,
		 KeyEvent.VK_N,KeyEvent.VK_T,
		 KeyEvent.VK_E,KeyEvent.VK_D,
		 KeyEvent.VK_SPACE,KeyEvent.VK_T,
		 KeyEvent.VK_H,KeyEvent.VK_E,
		 KeyEvent.VK_SPACE,KeyEvent.VK_F,
		 KeyEvent.VK_I,KeyEvent.VK_R,
		 KeyEvent.VK_S,KeyEvent.VK_T,
		 KeyEvent.VK_SPACE,KeyEvent.VK_K,
		 KeyEvent.VK_I,KeyEvent.VK_N,
		 KeyEvent.VK_D,KeyEvent.VK_COMMA,
		 KeyEvent.VK_SPACE,KeyEvent.VK_S,
		 KeyEvent.VK_O,KeyEvent.VK_SPACE,
		 KeyEvent.VK_S,KeyEvent.VK_H,
		 KeyEvent.VK_E,KeyEvent.VK_SPACE,
		 KeyEvent.VK_M,KeyEvent.VK_A,
		 KeyEvent.VK_D,KeyEvent.VK_E,KeyEvent.VK_SPACE,
		 KeyEvent.VK_H,KeyEvent.VK_E,
		 KeyEvent.VK_R,KeyEvent.VK_SPACE,
		 KeyEvent.VK_D,KeyEvent.VK_I,
		 KeyEvent.VK_A,KeyEvent.VK_R,
		 KeyEvent.VK_Y,KeyEvent.VK_SPACE,
		 KeyEvent.VK_H,KeyEvent.VK_E,
		 KeyEvent.VK_R,KeyEvent.VK_SPACE,
		 KeyEvent.VK_B,KeyEvent.VK_E,
		 KeyEvent.VK_S,KeyEvent.VK_T,
		 KeyEvent.VK_SPACE,KeyEvent.VK_F,
		 KeyEvent.VK_R,KeyEvent.VK_I,
		 KeyEvent.VK_E,KeyEvent.VK_N,
		 KeyEvent.VK_D
		};
		
		try {
			 Robot robot = new Robot();
			 //按下alt+tab
			 robot.keyPress(KeyEvent.VK_ALT);
			//这里是设置延时,1000L==1s
			 robot.delay(100);
			 robot.keyPress(KeyEvent.VK_TAB);
			 robot.delay(100);
			 
			 //松开alt+tab
			 robot.keyRelease(KeyEvent.VK_ALT);
			 robot.keyRelease(KeyEvent.VK_TAB);

				//用循环的方式,将保存的按键进行调用
			   for(int i=0;i<keys.length;i++){
				   robot.keyPress(keys[i]);
				   robot.keyRelease(keys[i]);
				   robot.delay(100);
				   System.out.println(keys[i]);
				   if(i==96 || i==205){
					   robot.keyPress(KeyEvent.VK_SHIFT);
						 robot.delay(100);
						 robot.keyPress(KeyEvent.VK_SLASH);
						 robot.delay(100);
						 robot.keyRelease(KeyEvent.VK_SHIFT);
						 robot.keyRelease(KeyEvent.VK_SLASH);
				   }
				  }
			 
			
			
		} catch (AWTException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

}

发布了15 篇原创文章 · 获赞 6 · 访问量 2800

猜你喜欢

转载自blog.csdn.net/qq_41743240/article/details/105626542