【发布时间】:2014-06-25 15:47:35
【问题描述】:
我在我的 JFrame 中嵌入了 LWJGL-canvas(在 JPanel 中,在 JSplitPane 中)。我有一个 JMenuBar。问题是 LWJGL 捕获焦点并且没有触发摆动鼠标事件。 因此,例如,如果我在弹出 JMenu 之一时单击 LWJGL 画布 - swing 将忽略(实际上没有收到任何)事件并且弹出窗口不会消失。
我还尝试重新验证菜单栏和整个 JFrame,目前对我没有任何作用。 在我的情况下,机器人不是解决方案 - 我不想使用它,它会导致不便。 顺便说一句,我试着做这样的事情:
MouseEvent me = new MouseEvent(mainFrame, 0, 0, 0, 0, 0, 1, false);
for (MouseListener m : menuBar.getMouseListeners()) {
m.mousePressed(me);
}
但这也没有效果。 还有其他解决方案吗?如何清除 JFrame 中的所有选择,例如当用户最小化窗口或按下 WIN 键时?
【问题讨论】:
-
哦,谢谢,显而易见的船长。我想知道如何清除选择,而不是接收事件。我读过关于混合 LWJGL 和 Swing 的文章,但这不是线索
标签: swing events focus mouse lwjgl