gpt4 book ai didi

java - 为什么 JVM 无法在 Linux 上获取输入文本区域设置

转载 作者:行者123 更新时间:2023-12-01 15:03:21 26 4
gpt4 key购买 nike

我正在尝试获取用户在 JPasswordField 中输入文本的区域设置。

为此,我正在做下一步:

final JPasswordField passwdField = new JpasswordField();
final InputContext it = InputContext.getInstance();
final JTextArea localeLng = new JTextArea();
...
...(some code)
...
passwdField.addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent e) {
localeLng.setText(it.getLocale().getLanguage().toUpperCase());
}
});

我有两种键盘布局 En 和 Ru。当我在它们之间切换时,它不会影响 localeLng 值。这可能在带有 JRE 7up7 的 Ubuntu 上。
但这在 Windows 7 上完美运行。

那么,我的问题可能出在哪里?

<小时/>

我的临时粗略解决方案:)

public void keyReleased(KeyEvent e) {
int key = (int)e.getKeyChar();
if(key>122){
localeLng.setText("!");
localeLng.setBackground(Color.RED);
} else {
localeLng.setText("En");
localeLng.setBackground(Color.BLUE);
}
}

最佳答案

提醒一下,使用 Java,您可以获得一组定义良好的方法和类,但实现不同,这可能是一件好事,有许多 JVM 和许多操作系统提供对 Java 的支持,可能每个操作系统都有自己的实现。

也就是说,this link将回答您的问题。

我还建议让用户决定什么是正确的区域设置,以编程方式获取正确的区域设置可能非常棘手,尤其是在 Linux 下。

关于java - 为什么 JVM 无法在 Linux 上获取输入文本区域设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13321181/

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