【发布时间】:2015-04-06 17:40:14
【问题描述】:
如果我在另一个面板中有一个由 9 个面板组成的网格,并且我希望能够单击一个子面板并在单击时将该面板的内容发送到“选定面板”区域,我该怎么做? (想象一下电子游戏的角色选择页面。当玩家选择他们的角色时,它会在“选定”窗格中显示角色的展开视图)
我正在考虑每个子面板的 mouseListeners 并检索单击的组件,但我不明白如何将单击的组件复制到“选定”区域。
【问题讨论】:
如果我在另一个面板中有一个由 9 个面板组成的网格,并且我希望能够单击一个子面板并在单击时将该面板的内容发送到“选定面板”区域,我该怎么做? (想象一下电子游戏的角色选择页面。当玩家选择他们的角色时,它会在“选定”窗格中显示角色的展开视图)
我正在考虑每个子面板的 mouseListeners 并检索单击的组件,但我不明白如何将单击的组件复制到“选定”区域。
【问题讨论】:
将您的项目添加到 JList 或单列 JTable。将ListSelectionListener 添加到您选择的组件中。指定ListSelectionModel.SINGLE_SELECTION。在您的 valueChanged() 处理程序中,ListSelectionEvent 将告诉您选择了什么值。使用该信息填写相邻面板的字段。一个完整的例子如下图所示,见here。
【讨论】: