0

快速提问,我有3 个 JPanel,一个有一个keylistener,它绘制我的游戏图形,你可以通过移动你的角色等来改变它,我还有第二个JPanel,它只是一个JTextArea,它只显示文本,最后我有另一个JPanel,它有一个JTextArea和一个JButton,文本区域接受输入,您可以按 Enter 键或单击按钮发送将出现在另一个文本框中的文本。但我的问题是,如何在每个面板中请求焦点?我如何通过鼠标点击转移焦点?

我知道如果我不经常调用requestFocus(true); 对于第一个显示所有图形的JPanel,由于某种原因它无法工作。我相信它是因为它总是在画画,也许它对每一次转身都失去了关注。但是我如何通过鼠标点击等获得焦点转移?

4

1 回答 1

4

一种可能的解决方案是不使用 KeyListener。取而代之的是使用在焦点方面更加宽容的键绑定。查看 Google 可以帮助您快速找到的 Key Bindings 教程。

如需更具体的帮助,请考虑创建和发布sscce

于 2013-03-29T03:29:03.353 回答