gpt4 book ai didi

java - 如何找出黑莓上按下了哪个键

转载 作者:行者123 更新时间:2023-12-04 06:54:47 26 4
gpt4 key购买 nike

我要什么 :例如,了解用户何时按下了上面带有数字“2”的按钮。我不在乎是否按下了“Alt”或“Shift”。用户按下了一个按钮,我想评估这个按钮上是否印有“2”。

当然,如果我切换设备,这个键就会改变。在 Bold 9700/9500 上,这是“E”键。在珍珠上,这是“T”/“Y”键。

通过在启用 ALT 按钮的情况下查找“2”字符的键码并使用 Keypad.key(),我设法以一种看似迂回的方式使其工作。获取实际按钮:

// figure out which key the '2' is on:
final int BUTTON_2_KEY = Keypad.key(KeypadUtil.getKeyCode('2', KeypadListener.STATUS_ALT, KeypadUtil.MODE_EN_LOCALE));

protected boolean keyDown(int keycode, int time) {
int key = Keypad.key(keycode);
if ( key == BUTTON_2_KEY ) {
// do something
return true;
}
return super.keyDown(keycode,time);
}

我不禁想知道是否有更好的方法来做到这一点。我查看了 KeypadListener 中定义的常量和 Keypad但我找不到任何映射到设备上实际按钮的常量。

有没有经验丰富的黑莓开发者愿意伸出援助之手?

谢谢!

最佳答案

使用 keyChar 来查找字符,但为了无论字符是否被更改都进行捕获,您还需要使用 Keypad.getAltedChar:

public boolean keyChar(char key, int status, int time)
{
if (key == '2' || Keypad.getAltedChar(key) == '2') {
//在这里做你的事情。
}
}

关于java - 如何找出黑莓上按下了哪个键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2694410/

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