gpt4 book ai didi

java - 如何将 Java Swing 中的键盘输入映射到另一个字符或字符串?

转载 作者:太空宇宙 更新时间:2023-11-04 13:08:03 25 4
gpt4 key购买 nike

我想捕获输入到 Java Swing 应用程序键盘中的一个键或键组合(例如“b”、Shift-b、Alt-b 和 Shift-Alt-b)。我想对键盘上的每个键执行此操作。一旦该键被捕获,我想用我选择的另一个字符或字符串替换它,并在 JTextPane 对象中显示替换字符或字符串,在 JTextPane 中键入原始字符的位置相同。

这个想法是将普通 QWERTY 键盘的按键映射到另一种文字和语言的字符,例如印地语。

我可以使用以下代码很好地捕获 QWERTY 键盘的按键:

JTextPane textPane = new JTextPane();
KeyStroke key = KeyStroke.getKeyStroke('b');

InputMap inputMap = textPane.getInputMap();
inputMap.put(key, DefaultEditorKit.forwardAction);

但是对于InputMap,我只能将KeyStroke 替换为另一个“Action”(例如DefaultEditorKit.forwardAction),而不能替换另一个字符或字符串。我不一定必须使用 InputMap - 任何允许我将键盘输入映射到另一个字符或字符串的方法都可以。

谢谢,桑迪普

最佳答案

您可以查看 DefaultEditorKit 类中的 DefaultKeyTypedAction 来了解如何绑定(bind)按键。

关于java - 如何将 Java Swing 中的键盘输入映射到另一个字符或字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34238672/

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