ボタン1のsetOnActionで定義されたメソッドを別の要素のsetOnActionから呼び出すためのショートカットを作成することはできますか?これはkeyboardshortcutjavafx、別のsetOnActionから要素のsetOnActionハンドラを呼び出しますか?
例えば、具体的である:
button1.setOnAction(e->{
doAThing();
});
keyboardShortcut.setOnAction(e->{
button1.handle(action); //<-- any variants possible?
});
を呼び出すことによってこれを行うことが分かりました。私は、キーボードショートカットからbutton1.fire()を呼び出します。私が複数のdoActions()をしないのは、doActionが多くのコード行のプレースホルダーであり、ショートカットの1行からボタンのアクションコードを参照できれば好ましいことです。 – Peaser
実際には、任意の違い。正直なところ、あなたがアクションをログに記録し、どのようにトリガーされたかを考えたければ、私が提案した解決策が好ましいと思います。 'doAction()'の前にロギング行を追加している場合は、メソッドで最初に "キーボードアクション"と "ボタンアクション"を受け取ります。とにかく、両方のソリューションが有効です。 –
イベントをチェインすると、ループを作成すると奇妙なバグが発生する可能性があります。プロジェクトに取り組んでいる人が複数いる場合は、イベント間の関係が明白でなく、容易に追跡できないため、これが発生する可能性はかなり高いです。 –