私のfluxプログラムがコントローラーに含まれているmvcで作成されたJavaプロジェクトがあります。
コントローラーをビューと同期する方法を知りたいのですが、スイングビューに入力が必要な場合、コントローラー上のフラックスプログラムが実行され続けると思います。
この問題を解決する方法がわからないため、助けが必要です。
ブール値を含むブロックを試してみました (例: while(!Action) をビューに設定し、コントローラーに戻ったときに変数を設定する必要があります (true))。
私のfluxプログラムがコントローラーに含まれているmvcで作成されたJavaプロジェクトがあります。
コントローラーをビューと同期する方法を知りたいのですが、スイングビューに入力が必要な場合、コントローラー上のフラックスプログラムが実行され続けると思います。
この問題を解決する方法がわからないため、助けが必要です。
ブール値を含むブロックを試してみました (例: while(!Action) をビューに設定し、コントローラーに戻ったときに変数を設定する必要があります (true))。
コントローラーの値が変更されたときにビューを更新する必要があることを理解していれば、その値を変更して、ビューがその値を更新するようにコントローラーに通知する必要があるようにすることもできます。
もしそうなら
コントローラーがビューの更新/変更イベントをリッスンし、ビューに従ってデータ/モデルを更新する必要があります。
また、コントローラー用の新しい関数、新しいセッターを作成する必要があります。このセッターは、コントローラーが直接変更されるたびに、ビューと値を自動的に更新します。
controller.superSet(newValue)
{
this.value = newValue;
view.setValue(newValue);
}
通常、MVC では、コントローラーはデータを保持しません (少なくともそれほど多くはありません)。それを保持するモデルがあります。上記のモデルは、コントローラーまたはビューに直接アクセスすることを想定していません。彼は、コントローラー内で更新メソッドを呼び出して値を取得し、ビューを更新するコントローラーに通知します。
通常、コントローラーはビューに完全にアクセスできますが、ビューはコントローラーにアクセスしません。ビューはイベントを使用して、何かが変更されたことをコントローラーに知らせます。