当前位置: 首页 > 面试题库 >

从Java中的任意char获取VK int

卫开济
2023-03-14
问题内容

您如何从字母char获得VK代码?看来您应该能够执行类似的操作javax.swing.KeyStroke.getKeyStroke('c').getKeyCode(),但这不起作用(结果为零)。如果您已经拥有一个KeyEvent,那么每个人都知道如何获取键码,但是如果您只是想将chars转换为VK
int,该怎么办?我对获取奇怪字符的FK代码不感兴趣,只有[AZ],[az],[0-9]。

这个问题的背景--------我见过的所有机器人教程都假定程序员喜欢通过发送带有VK代码的按键来拼写单词:

int keyInput[] = {
      KeyEvent.VK_D,
      KeyEvent.VK_O,
      KeyEvent.VK_N,
      KeyEvent.VK_E
  };//end keyInput array

叫我懒,但是即使使用Eclipse,也无法在GUI上使用TDD。如果有人碰巧知道类似Robot的类,该类接受字符串,然后为这些字符串模拟用户输入(我正在使用FEST),那么我很想知道。


问题答案:

也许这个丑陋的hack:

Map<String, Integer> keyTextToCode = new HashMap<String, Integer>(256);
Field[] fields = KeyEvent.class.getDeclaredFields();
for (Field field : fields) {
    String name = field.getName();
    if (name.startsWith("VK_")) {
        keyTextToCode.put(name.substring("VK_".length()).toUpperCase(),
                          field.getInt(null));
    }
}

然后,keyTextToCode将包含从字符串(例如“ A”或“ PAGE_UP”)到vk代码的映射。



 类似资料:
  • 问题内容: 如何在Java中获取char的UTF8代码?我有char’a’,我想要值97我有char’é’,我想要值233 这是更多值的表格 我试过了,但结果却是10分而不是97分,为什么? 这似乎很基本,但是任何帮助将不胜感激! 问题答案: 实际上是包含该字符的unicode值(准确地说是UTF-16-您需要 两个 s来表示BMP之外的字符)的数字类型。您可以用它做的所有事情都可以用。 尝试将字

  • 问题内容: 我有一个pthread_t,我想更改它的CPU关联性。问题是我使用的是glibc 2.3.2,它没有pthread_setaffinity_np()。没关系,因为pthread_setaffinity_np()本身是sched_setaffinity()的包装,可以通过传递线程ID而不是进程ID来调用它来设置任意线程的亲和力。 但是 … sched_setaffinity可以使用的线程

  • 问题内容: 最近,在进行程序时,我遇到了一个问题。以下是程序的一部分 我不明白这行代码的作用: 我猜想它正在递增lettercounts数组中特定字符的值(最初为0);我猜’a’的索引是0,’z’的索引是25。但是我想了解那小段代码是如何工作的。 问题答案: 目的是计算每个字符的出现次数。 是一种获取字符在字母表中位置的巧妙方法。会给你0。会给你1。会给你2,依此类推。 该值用作数组的索引(如您正

  • 我有一个这样的endpoint: 在这里,是向用户公布的关键字。但是和是任意参数。对于另一个资源,如,任意参数可以是。 在 openapi 规范中,我有 我正在使用代码生成插件 ,在服务器控制器中,我想捕获所有任意参数。如何扩展我的 openapi 规范以使参数超出。如果有一种方法可以在单个数组中获取所有查询参数,那也将有所帮助。

  • 问题内容: 我有一个小程序,从今天开始显示当前的一周,像这样: 然后是显示周数的JLabel: 因此,现在我想拥有一个JTextField,您可以在其中输入日期,而JLabel将使用该日期的星期数进行更新。我真的不确定如何做到这一点,因为我是Java的新手。我需要将输入另存为字符串吗?一个整数?它将是什么格式(yyyyMMdd等)?如果有人可以帮助我,我将不胜感激! 问题答案: 我需要将输入另存为

  • 问题内容: 动机: 为了帮助进行远程调试(Java),能够请求远程服务器将任意对象发送到我的本地计算机进行检查是很有用的。但是,这意味着远程服务器必须能够序列化运行时事先未知的任意Java对象。 于是我四处询问,偶然发现了Kryo序列化库。根据Kryo的文档,主要功能是在序列化任意Java对象方面非常强大。对象不必实现,不需要no- arg构造函数就可以反序列化,而且我甚至不需要在序列化之前就了解