2012-05-08 4 views
0

マウスクリックイベントでContentPanelからすべての要素を削除し、新しい要素を追加します。 removeAll()メソッドで正常に動作しています。これにより、既存のコンポーネントがすべて削除されます。しかし、私は新しいコンポーネントを追加したいときは追加されません。GXTのマウスクリックイベントでContentPanelをContentPanelに追加できます

+1

、あなたのレイアウトを更新することを強制するthis.layout(true)してくださいますか?あなたは確かにリファレンスを正しく使用していません... – Sam

答えて

2

私はクリックハンドラを省いたかもしれませんが、これからアイデアを得るべきです。

private ContentPanel contentPanel; 

public SwapScreen() { 
contentPanel = new ContentPanel(); 
add(contentPanel); 
} 

public void swap1() { 

    /*This should be split into a separate 
    method and called only once to avoid recreating them.*/ 
    field1 = new TextField<String>(); 
    contentPanel.add(field1); 

    field2 = new TextField<String>(); 
    contentPanel.add(field2); 

    this.layout(true); 
} 

public void swap2() { 

    /*This should be split into a separate 
    method and called only once to avoid recreating them.*/ 
    anotherField1 = new TextField<String>(); 
    contentPanel.add(anotherField1); 

    anotherField2 = new TextField<String>(); 
    contentPanel.add(anotherField2); 

    this.layout(true); 
} 

最も重要な部分は、あなたのコードを投稿することができ

関連する問題