2012-01-30 10 views
0

私はTreeTableを持っていて、要素で初期化することができます。 しかし、後で私は新しい要素を挿入することができませんでした。TreeTable新しい項目を挿入する(Vaadin)

  • ごとtreetable.addItem(...)は、初期化のメソッドは、いずれかの後に新しい要素を挿入することはできませんヌル後で
  • できます。
  • すべての新しいアイテムは、ユニークなアイテムID
  • を持っている私はすべてのエラーメッセージ

を取得できませんでしたどのように私は、本当の問題が何であるかを見つけることができますか?

適切なタイプを適切な順序で追加しました。

ありがとうございます。

(私たちは10列を持っているので、コードスニペットの挿入が長く退屈だろう)

+0

あなたの質問を最もよく理解するためのコードを追加する必要があります – zond

答えて

3

あなたが任意のコードを与えていないとき、間違っているかを知ることは非常に難しいのですが、それはあなたのテーブルには許可していないことが考えられます新しいオブジェクト。このメソッドを使用して変更する

myTreeTable.setNewItemsAllowed(true) 
+0

私はmyTreeTable.setVisibleColumns ...行をコメントアウトしました。それはうまくいきます...後で私の質問に完全に答えるでしょう。 – cscsaba

+0

マーティン、助けてくれてありがとう – cscsaba

1

「問題」は何か気づいた。 setVisibleColumnsを使用した後、新しい項目を追加できませんでした。 私はそれをコメントしましたので、新しい項目は木目に入る可能性があります。 テストそれ自身(Vaadin 6.7.3-4)

TreeTable tt = new TreeTable(); 
    mainWindow.addComponent(tt); 

    tt.addContainerProperty("description", String.class, ""); 
    tt.addContainerProperty("keyword", String.class, ""); 
    tt.addContainerProperty("priority", String.class, ""); 

    tt.addItem(new Object[]{"0","k 0","p 0"},0); 
    tt.addItem(new Object[]{"1","k 1","p 1"},1); 
    tt.addItem(new Object[]{"2","k 2","p 2"},2); 
    //tt.addItem(new Object[]{"3","k 3","p 3"},3); //works well  

    tt.setVisibleColumns(new Object[] {"description","keyword"});  

    tt.addItem(new Object[]{"3","k 3","p 3"},3); //doesn't work because of setVisibleColumns ....   

奇妙な...

のCs。

関連する問題