java虚拟键盘_如何用Java为其他程序制作虚拟键盘?

我想用Java制作触摸屏超极本的虚拟键盘.例如,我想用我的虚拟键盘输入Microsoft Word.

到目前为止我所做的是使用JButton来表示键,并使用Robot类来模拟计算机输入.

我遇到的问题是当我按下JButton时,它会聚焦JButton,因此Robot类将输入定向到JButton而不是我要输入的程序,例如Microsoft Word.

对于按钮A,我的代码看起来像这样

int KeyValue = KeyEvent.VK_A;

Robot robot ...

JButtton.addMouseListener(new MouseListener(){

...

public void mousePressed(MouseEvent e){

robot.keyPress(KeyValue);

}

public void mouseReleased(MouseEvent e){

robot.keyRelease(KeyValue);

}

...

}

...

我已确认按下按钮.我向JButton添加了一个KeyListener,每当我点击按钮时都会按下“A”,但它是针对JButton而不是其他程序.

我尝试过使用JButton.setFocusable(false),但它没有用……

我已经搜索了与我类似的其他问题,但它们都是本地键入另一个Java窗口或文本框,而不是另一个程序.

所以我的问题是 – 我如何制作一个键入其他程序的虚拟键盘?最好使用JButton,但我愿意接受任何建议吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值