AbstractAction为的WindowListener(AbstractAction as W

2019-06-24 06:25发布

我试图从状态在我的GUI应用程序通过使用Action对象的分离功能。 我已经成功地使用这些来创建菜单项和按钮具有相同的功能。

我的问题是这样的:我想为我的菜单都“退出”项目和框架的关闭按钮同样的动作。

目前,我已经能够通过将下面的WindowListener的框架来解决它:

private class MainWindowListener extends WindowAdapter {
    @Override
    public void windowClosing(WindowEvent e) {
        new ExitAction(model).actionPerformed(new ActionEvent(e.getSource(), e.getID(), "Exit"));
    }
}

是不是有一个更简单更直接的方式来做到这一点?

Answer 1:

转发事件是很方便的,但你也可以使用dispatchEvent()如图所示这里 。

附录:使用更多的例子Action如下所示。

  • LinePanel它连接按钮和按键。
  • ScrollAction它充分利用现有的摇摆动作。
  • KeyPadPanel这说明转发行为。
  • GraphPanel这表明在工具栏图形编辑器的行为。


文章来源: AbstractAction as WindowListener