【问题标题】:JPanel not responding to KeyEventsJPanel 没有响应 KeyEvents
【发布时间】:2016-01-12 03:44:17
【问题描述】:

当我使用JFrame 并且我有一个JPanel 和一些其他组件(如JButton)时,我分配了 wasd 键到JFrame(KeyEvent),但是当我按下一个键时JPanel 没有响应。

只有当JPanelJFrame 中的唯一组件时,JPanel 才会响应关键事件。如何更改此焦点,以便 JFrame 将关键事件发送到 JPanel

【问题讨论】:

    标签: java swing jframe jpanel keyevent


    【解决方案1】:

    由于与KeyListener相关的所有问题都不起作用,请使用Key Bindings API,它将解决KeyListener的焦点相关问题

    使用requestFocusInWindow 的任何建议都是黑客行为,会导致您遇到更多问题,然后他们才能解决。使用Key Bindings API,它旨在帮助解决这个问题

    【讨论】:

    • 无论如何,我只是在绘制图形时遇到了困难。我看到这些人用图形制作了很酷的 java 游戏,他们让它看起来比我做起来容易得多。我对如何制作简单图形游戏的基本原理感到非常沮丧。正是这个障碍让我慢了将近一年。我不知道该怎么办! D:这是我做过的最好的东西:dropbox.com/sh/v6tacqvth1js5yj/AABDmGHnwCkSF8ipy0pIsIDta?dl=0
    • 绘画和图形很复杂,制作游戏更是如此,所以如果你刚开始没有成功,不要气馁
    • 我什至不知道从哪里开始。现在我正在尝试制作一个包来处理不同的形状并让它们在 JPanel 区域中移动。有时我只是想放弃它并学习 Unity 或 Unreal。我觉得我做的工作比我必须做的要多。我们可以将这个讨论转移到 Java 聊天中吗? (炸鱼和薯条)
    猜你喜欢
    • 2013-05-22
    • 1970-01-01
    • 2012-12-09
    • 2014-03-25
    • 2012-10-23
    • 2023-03-27
    • 2012-07-14
    • 2012-04-18
    • 1970-01-01
    相关资源
    最近更新 更多