我有JComboBox
一个关键听众。
当我击中时<enter>
,我会启动一些动作,然后我需要失去对JComboBox
!
专注于它,我可以做JComboBoxObject.grabFocus();
但是transferFocus()
将焦点转移到下一个元素(我不在乎焦点在哪里,只是远离组合框)不起作用。
从grabFocus()
另一个组合框进行操作,但对我来说似乎是一个非常烦人的黑客行为。有更好的解决方案吗?
我有JComboBox
一个关键听众。
当我击中时<enter>
,我会启动一些动作,然后我需要失去对JComboBox
!
专注于它,我可以做JComboBoxObject.grabFocus();
但是transferFocus()
将焦点转移到下一个元素(我不在乎焦点在哪里,只是远离组合框)不起作用。
从grabFocus()
另一个组合框进行操作,但对我来说似乎是一个非常烦人的黑客行为。有更好的解决方案吗?
更新:从这两个组合示例开始,将这些行中的任何一行添加到actionPerformed()
实现中似乎都可以满足您的要求。
combo1.transferFocus();
combo2.requestFocusInWindow();
我可以建议你先使用
.getNextFocusableComponent()
然后使用
.requestFocusInWindow()
这意味着像这样实现它,
JComboBox.getNextFocusableComponent().requestFocusInWindow();
一个重要的注意事项是.getNextFocusableComponent()已经过时,但它可以工作得更好,你可以使用它,但如果你有任何其他解决方案,我宁愿不使用它。