如何用java的jna模拟键盘按键

Python016

如何用java的jna模拟键盘按键,第1张

这个比较简单的,用 java.awt.Robot 来实现就行了。

Robot 对象有几个个方法就是操作键盘的:

void keyPress(int kc)

void keyRelease(int kc)

//例子

import java.awt.AWTException

import java.awt.Robot

import java.awt.event.KeyEvent

public class RobotTest {

private static Robot rbt

static{

try {

rbt=new Robot()

} catch (AWTException e) {e.printStackTrace()}

}

//按下

static void press(int kc){rbt.keyPress(kc)}

//释放

static void release(int kc){rbt.keyRelease(kc)}

static void type(int kc){press(kc)release(kc)}

public static void main(String[] args) {

//F7 长按

//press(KeyEvent.VK_F7)

//F7按一下

type(KeyEvent.VK_F7)

//...

}

}

java.awt.Robot

 //模拟Ctrl+Alt+Z的按下和抬起  

    public void keyBoardDemo()  

    {  

        robot.keyPress(KeyEvent.VK_CONTROL)  

        robot.keyPress(KeyEvent.VK_ALT)  

        robot.keyPress(KeyEvent.VK_Z)  

        robot.keyRelease(KeyEvent.VK_CONTROL)  

        robot.keyRelease(KeyEvent.VK_ALT)  

        robot.keyRelease(KeyEvent.VK_Z)  

    }

class myKeyListener implements KeyListener{

public void keyTyped(KeyEvent e) {

//

}

public void keyPressed(KeyEvent e) {

// 开启计时器

}

public void keyReleased(KeyEvent e) {

// 关闭计时器

}

}