我需要创建一个派生自JTextComponent
(JTextPane
实际上是从)的类,其中至少一个默认键映射已更改。也就是说,在我的特殊 JTextPane 中,我希望 ">" 击键来执行一个操作,而不是将该字符添加到文本窗格,因为默认情况下所有可打印的键入字符都会被处理。
为了阻止正常行为,有以下 API:
JTextComponent.getKeymap()
Keymap.addActionForKeyStroke()
JTextComponent.setKeymap()
但是,我发现尽管这些方法不是静态的,但它们确实会影响JTextComponent
我的应用程序中所有 s 使用的键映射。没有可以克隆 Keymap 的简单机制,这可能会解决问题,或者我错过了什么。
我所追求的是一种为我的JTextPane
类而不是为所有JTextComponent
派生类更改键映射的方法。
还是我应该去别处寻找?