摇摆可能是一个令人沮丧的野兽。尤其是如果您尝试使用它来设计一个“违背”Swing 设计师在设计 Swing 时使用的假设的应用程序。我们有要求将功能分配给不正常的击键。昨天,问题是这样的,JComboBox
并且JScrollPane
考虑了 PageUp 和 PageDown 之类的键“导航键”并抓住了这些键,尽管我们试图在这些组件具有焦点时将它们重新映射到其他用途。你可能会说,那是糟糕的设计,但这是我们的要求。甚至还有一些特殊的键盘,上面有指示这些功能重新映射的标签,我们必须满足这些要求。这就是生活。
今天又出现了一个问题,aJTextPane
似乎在获得焦点时抓住了F6键。当其他组件有焦点时,不是问题。怎么回事?
因此,我的问题很简单:是否有任何文档说明每种 Swing 组件正在抓取哪些击键并将其放置在InputMap/ActionMap
应用级程序员被敦促遵循的正常系统之外?我知道这进一步取决于LookAndFeel
,并且发生的事情Motif
可能与发生的事情不同Metal
,等等。仍然,即使深入到这个级别,这些东西是否记录在任何地方?我想知道这一点,所以我可能一开始就知道我的问题将出在哪里,而不是一次学习这个。如果我知道问题出在哪里,我就知道如何解决它们。但我有源代码、java 文档,只是不知道去哪里找。