2012-03-29 18 views
1

バインドされたJTextFieldとJComponentで作成された別のグラフがあります。グラフをドラッグすると、マーカーが更新され、バインドされたJTextFieldはドラッグされているときの座標を表示する必要があります。私がバインドしているとき、ドラッグが終了するまで、グラフは再描画されません。バインドをオフにすると、私のグラフはドラッグして再描画されます。私がドラッグしている間、JGoodiesが私の再ペイントコールをブロックしている理由は分かりません。誰がなぜこれが起こるのか知っていますか?何かが私が把握することはできませんなJGoodiesに起こっているJGoodiesバインディングではJComponentを再描画できません

public void dragMarker() 
{ 
    ...some code... 
    firePropertyChange("propertyName", oldValue, newValue); 
    myJComponent.refresh(); 
} 

:よう

私のコードが見えます。バインディングコールが完了した後に再描画する必要があります。

また、私はSwingが複数の呼び出しを折りたたんで1回の呼び出しに再描画できることを読んでいました。それが私に起こっているのだろうか?私の再ペイントコールは、最後に1つのコールに崩壊しているだけですか?

答えて

0

私が完全に満足していない私の答えは、firePropertyChangeListenersを実行し、JGoodiesのバウンドコードを更新する.3秒のレートでスケジュールされたエグゼキュータを持つswingworkerスレッドを起動することです。これは更新が不安定であることを意味しますが、少なくとも描画コードはほぼ完全に滑らかです。この問題が発生するということは、私の心を揺さぶる。これは私ができる最高でした...

関連する問題