gpt4 book ai didi

java - 用于移动鼠标光标(数字键盘)的键盘快捷键,即 a、6、2、8... 不适用于 java 机器人类

转载 作者:行者123 更新时间:2023-11-30 06:42:45 25 4
gpt4 key购买 nike

我们可以使用数字键盘的键盘快捷键,即

4-left 6-right 2-down 8-up 

用于在不使用鼠标的情况下滚动鼠标光标。

通过启用

Control Panel\Ease of Access\Ease of Access Center\Make the mouse easier to use

但它不适用于 java 机器人类 - 它只是在屏幕上打印数字,即 4/6/2/8。

知道可能是什么问题吗?

代码:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.logging.Level;
import java.util.logging.Logger;
class MoveCursor
{
public static void main(String[] args)
{
try {
Robot r=new Robot();
r.keyPress(KeyEvent.VK_NUMPAD4);
r.delay(4000);
r.keyRelease(KeyEvent.VK_NUMPAD4);
} catch (AWTException ex) {

Logger.getLogger(MoveCursor.class.getName()).log(Level.SEVERE, null, ex); } } }

最佳答案

文档指出 java.awt.Robot (请参阅: https://docs.oracle.com/javase/8/docs/api/java/awt/Robot.html )类“在平台 native 输入队列中生成输入”。

鼠标键不在同一级别上操作(它们实际上只是用鼠标移动操作代替击键)。

因此,由于 MouseKeys 不监视 java.awt.Robot 添加到的 native 输入队列,因此它无法用鼠标移动替换事件。

所以简而言之,结论是你不能将 java.awt.Robot 类与鼠标键结合起来。

<小时/>

但是,java.awt.Robot 类确实提供了可用于控制鼠标的其他功能,即#mouseMove 函数:https://docs.oracle.com/javase/8/docs/api/java/awt/Robot.html#mouseMove-int-int-

关于java - 用于移动鼠标光标(数字键盘)的键盘快捷键,即 a、6、2、8... 不适用于 java 机器人类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44152430/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com