私のアプリケーションでは、View
にはModel
の変更があります。 Controller
は、View
とModel
をディスパッチするイベントの処理を担当します。Java MVC:Observerパターンを使用してビューを更新しています
たとえば、2つのビューがあるとします。まず、InputView
は、2つのJSpinner
要素(Spinner1
とSpinner2
)を含んでいます。次に、ResultView
には、JLabel
のスピナーの値が含まれています。また、追加の制約として、Spinner2
の値をSpinner1
の値に依存させたいと考えています。 Spinner2
の最小値は2x
、現在の値はSpinner1
である必要があります。
Spinner1
の値をController
に変更すると、ChangeEvent
となり、Model
が更新されます。 Spinner2
の値を調整する必要があるため、別のChangeEvent
が送信され、Model
が2回更新されます。このスキーマの問題点は、それぞれModel
が更新され、View
のリフレッシュが更新されることです。したがって、この例ではView
は1つではなく3または4回更新されます(Spinner1
変更、Spinner2
最小値の変更、Spinner2
値の変更)。これによりちらつきが発生します。
すべての変更が完了したらView
が一度だけ更新されるようにするにはどうすればよいですか?
私がちらつきについての考えを持っていないので、私は、ビューの必然的なリフレッシュを意味ちらつくことで、あなたのコード – mKorbel
内の別のrecrusive問題がなければならない、SSCCEを投稿してください。私たちは、チャートまたはちょうどラベルよりも複雑なもののいくつかの並べ替えを使用している場合は、複数のリフレッシュが 'Model'を観察label' noticible –