Tadotter - Eclipse RCP版 (1.1.2.v20090921) | 2009-09-21 15:19 |
Tadotter - JavaFX版 (2.0.1) | 2009-07-06 11:19 |
正しくbindして、正しくデータを操作できているはずなのに、 画面の表示がどうも期待通りに変化してくれない。 そのような状況で以下の関数は有効でした。 ここで切り替わって欲しい、という場所で呼び出せば効きます。
例:
public function updateScene(scene:Scene):Void{ try{ var dummy = Rectangle{ width: scene.width height: scene.height } insert dummy into scene.content; delete dummy from scene.content; }catch(e:java.lang.Throwable){ e.printStackTrace(); } }
try-catchブロックを使う必要はありません。 特に何も起きません。 Sceneと同サイズの矩形dummyをScene.contentの最後、つまり最前面に挿入して、すぐに削除します。 削除したので元と変わりは無いのですが、 Scene.content配下のNode群は、まんまと再描画をさせられてしまうようです。 Sceneにwidth, heightを設定せずStageに設定しているアプリケーションでは、 この実装に手を入れる必要があるでしょう。 本来このようなことをしなくてもいいはずなので、 シンプルな実装を心掛け、 この関数を使わずに済ませたいものです。
[PageInfo]
LastUpdate: 2009-08-04 17:58:03, ModifiedBy: happyhills
[Permissions]
view:all, edit:login users, delete/config:members