AbstractAction を拡張する actionSave クラスがあります。保存ボタンに使用します。他の場所で、ボタンに使用されたのと同じ瞬間を実行したい。以下のように使用するという結論に達しましたが、引数として何を渡せばよいかわかりませんか?
model.getActionSave().actionPerformed("what should i add here for action event");
AbstractAction を拡張する actionSave クラスがあります。保存ボタンに使用します。他の場所で、ボタンに使用されたのと同じ瞬間を実行したい。以下のように使用するという結論に達しましたが、引数として何を渡せばよいかわかりませんか?
model.getActionSave().actionPerformed("what should i add here for action event");
メソッドのコードをactionPerformed()
引数なしで別のメソッドに抽出し、代わりにこのメソッドを呼び出します。
public void actionPerformed(ActionEvent e) {
save();
}
public void save() {
...
}
...
model.getActionSave().save();
独自の を作成するだけActionEvent
で、パブリック コンストラクターがあります。例えば
model.getActionSave().actionPerformed(
new ActionEvent( this, ActionEvent.ACTION_PERFORMED, "Save" )
);
たとえば、UI をテストしている場合は、API を介してボタンをクリックすることも選択できます。
button.doClick();
しかし、一般的に私は最初のアプローチを好み、UI との結合を避けます。