我在我的JTextPane中发现 Ctrl + Shift + O 会更改ComponentOrientation。
对于我自己的TextEditor,我必须禁用它,但JTextPane或其他Swing-Components中是否有其他快捷方式?
键盘绑定 Ctrl - X , Ctrl - C 和 Ctrl - V 是已知的 还有更多吗?
答案 0 :(得分:5)
但JTextPane或其他Swing-Components中是否还有其他快捷方式?
请参阅列出所有绑定的Key Bindings,并说明如何禁用您不想要的绑定。
答案 1 :(得分:2)
尝试以下(我自己没有检查过):
myTextPane.getKeymap().removeKeyStrokeBinding(
KeyStroke.getKeyStroke("ctrl shift O"));
那应该删除myTextPane
的加速器绑定。
如果要查找所有键绑定,则只需遍历Keymap
:
for (KeyStroke stroke: myTextPane.getKeymap().getBoundKeyStrokes())
{
Sytem.out.println(stroke.toString());
}
请注意,您还可以为所有文本组件禁用给定的KeyStroke
:
JTextComponent.getKeymap(JTextComponent.DEFAULT_KEYMAP).removeKeyStrokeBinding(
KeyStroke.getKeyStroke("ctrl shift O"));
因为JTextComponent.DEFAULT_KEYMAP
定义了默认情况下每个Keymap
使用的公共JTextComponent
的名称(包括JTextPane
等子类。)