如何确定在JPanel(java)中选择哪个子JPanel

时间:2013-05-30 06:32:28

标签: java swing jpanel

我遇到一个问题,我有几个类似的JPanel s,它们垂直包含在主JPanel中。我的问题出现在我的按钮上,该按钮只与当前选中(点击)的孩子JPanel进行交互。

我有一个带有主JPanel的控制器,我怎么能有一个只返回所选JPanel的方法?

1 个答案:

答案 0 :(得分:1)

这非常困难。默认情况下,JPanel不可聚焦(它们无法接收键盘焦点)。

您可以尝试使用KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner();并使用生成的Component的{​​{1}}方法确定包含当前可聚焦组件的当前面板,但这并非保证,因为重点关注组件可能包含在另一个容器中,包含在您感兴趣的容器中......

更好的想法可能是建立某种将按钮或动作连接到子面板的模型......?