将键盘事件发送到未聚焦的帧

时间:2014-07-19 02:03:18

标签: java swing jframe focus

我目前在我的应用程序中有2帧。 第一个是主框架,并有一个工具栏,上面有加速器(CTRL-Z,CTRL-Y等)。

目前,当第二帧被聚焦时,没有一个加速器可以工作。有没有办法可以将键盘事件传递给第二帧的第一帧?

1 个答案:

答案 0 :(得分:0)

请考虑所有其他人'警告..但你可以通过实施观察者模式来实现。

第一帧 - >实施观察员。 第二帧是一个Observable(包含一个观察者列表)

创建第二帧时,"注册"第一帧(添加到第二帧的观察者列表)。当第二帧接收输入时,也告诉它接收输入的观察者列表。你甚至可以有超过2帧,他们都会收到输入。 (天啊,为什么?:P)