2012-02-27 32 views
1

私はCellTableを使用して、データストアに格納されているエンティティの情報を表示しています。パラメータのデータ型はStringとintです。セレクションセルGWTに現在の値を表示

私はSelectionCellを使用してすべてのパラメータの値を表示することにしました。これはString型のデータ型では完全に機能しますが、int型のデータ型では失敗します。このパラメータの

String name; 

可能な値は次のとおりです: "NAME1"、 "Name2は" または "NAME3"

は例えば、私はと呼ばれるパラメータを持っています。私はSelectionCellでこれらの値を持っているので、エンティティは、パラメータ名=を持っている場合、「Name2は」は、ディスプレイ「Name2は」今、私はと呼ばれるパラメータ持つ

List<String> names= new ArrayList<String>(); 

names.add("Name1"); 
names.add("Name2"); 
names.add("Name3"); 

SelectionCell nameCell = new SelectionCell(names); 

Column<Entity, String> nameColumn = new Column<Entity, String>(nameCell){ 

     @Override 
     public String getValue(Entity object){ 
      return object.getName(); 
     } 
    }; 
cellTable.addColumn(nameColumn, "Name"); 

SelectionCell:

int age; 

可能な値をこのパラメータの値は、18,19,20、...、65です。私はSelectionCellでこれらの値を持っていますが、実体は、パラメータ年齢= 25を持っている場合、SelectionCellはその値を表示しません、それは18

List<String> ages= new ArrayList<String>(); 

for(int i = 18; i <= 65; i++){ 
    ages.add("" + i); 
} 

SelectionCell ageCell = new SelectionCell(ages); 

Column<Entity, String> ageColumn = new Column<Entity, String>(ageCell){ 

     @Override 
     public String getValue(Entity object){ 
      return "" + object.getAge(); 
     } 
    }; 
cellTable.addColumn(ageColumn, "Age");  

がどのように私はそれを解決することができます表示しますか?

乾杯。

+2

レンダリングする前にintを文字列に変換しようとしましたか?選択ボックスは文字列値を持つことを好みます。 –

+0

SelectionCellはリストの値しか受け入れないので、はい、私はStringに変換しています。私はコードを追加しました。 – sosegon12

+0

object.getAge()が有効な年齢の1つを返していますか? –

答えて

0

を試してみてください。DataGridを作成する前に、あなたの年齢リストを作成してください。

関連する問題