当用户按下Enter键时,我需要将焦点转移到另一个元素上,因此我可以通过以下方式在大多数元素上注册KeyStroke:

 this.getInputMap( ).put( KeyStroke.getKeyStroke( '\n' ), "transferFokus" );

  this.getActionMap( ).put( "transferFokus", transferFokusa );

除了我的类扩展了JXDatePicker的类(我认为它消耗了Enter键)之外,其他所有东西都工作正常。我能做什么?

这样做的主要目的是简化使用GUI界面的人员,因为他们已经在旧的DOS应用程序上工作,在该应用程序中,他们使用Enter而不是TAB键在窗体内部移动。

最佳答案

从javadoc看来,JXDatePicker使用JFormattedTextField作为日期字符串的实际编辑组件。 JXDatePicker.getEditor()返回文本字段,所以也许您应该尝试在文本字段上调用getInputMap()和getActionMap()?

关于java - 如何在JXDatePicker上注册KeyStroke,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/819557/

10-09 00:24