7

Actionオブジェクトを使用して、GUIアプリケーションで関数と状態を分離しようとしています。これらを使用して、同じ機能を持つメニュー項目とボタンを作成することに成功しました。

私の問題はこれです:メニューの「終了」項目とフレームの閉じるボタンの両方に同じアクションを設定したいです。

現在、次のWindowListenerをフレームに追加することで解決できました。

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

これを行うためのより簡単で簡単な方法はありませんか?

4

1 に答える 1

6

イベントの転送は便利ですが、ここdispatchEvent()に示すように を使用することもできます。

補遺: 使用するその他の例をAction以下に示します。

  • LinePanelボタンとキーを接続します。
  • ScrollAction既存の Swing アクションを活用します。
  • KeyPadPanelこれは、転送アクションを示しています。
  • GraphPanelツールバーにグラフ エディタのアクションが表示されます。
于 2012-05-08T01:54:51.373 に答える