2016-11-11 6 views
0

GXTグリッドに行を追加しようとしていて、悲惨に失敗しています。私はINフィルターとして使用できるグリッドを構築しようとしています。それはDateFieldと2つのボタンADDとREMOVEを持っています。 ADDは日付フィールドから日付を取得し、グリッドに追加する必要があります。 REMOVEは、選択した項目をグリッドから削除する必要があります。GXTグリッドに行を動的に追加する方法

enter image description here

問題は、私は日付グリッドのストアを追加するとき、私はそれがグリッドに表示するために取得する方法を見つけ出すことができない、ということです。私は、loader.load()、view.refresh()、grid.configure()、および起動されたイベントのさまざまな組み合わせを試みました。

addButton = new Button("Add"); 
    addButton.setVisible(true); 
    addButton.addSelectionListener(new SelectionListener<ButtonEvent>(){ 
     @Override 
     public void componentSelected(ButtonEvent ce) { 
      if(dateField.getValue() != null) { 

       GwtDate date = GwtDate.decodeFromJavaDate(dateField.getValue()); 
       grid.getStore().add(date); 
       //grid.getStore().getLoader().load(); 
       //grid.getView().refresh(true); 
       grid.reconfigure(grid.getStore(), grid.getColumnModel()); 

       fireEvent(Events.Change); 
      } 

     } 
    }); 

    toolbar.add(addButton); 

GWT/GXTのこれらの古いバージョンのドキュメントではあまり見つからないので、誰かが助けてくれることを願っています。ありがとうございました。

GXTバージョン2.2.3 GWTバージョン2.2.0

答えて

1

問題は、ほぼ確実に、サイジングの一つである - グリッド内部のメニューは、レイアウトなしサイズなしで設定されている、と期待されています(これはメニューが通常動作する方法であるため)内容に合わせて成長しますが、多くのデータビューと同様に、必要に応じてスクロールバーを追加できるように、明示的なサイズを指定しなければ機能しません。

サイズを指定するか、親からレイアウトを設定するか、「自動高さグリッド」の例/回避策を調べて、使用の効果を理解してください。


はまた、GWT 2.2とGXTの2.2.3が最新の5年間であることに注意してください、とGXT 4がリリースされた際にGXT 2は、エンド・オブ・life'd年前のことでした。それ以降、他の問題やブラウザのバージョンがリリースされる可能性があります。

関連する問題