mozillaブラウザのWindowsシステムでsmart gwt 2.2を使用しています。 私のアプリケーションでList Gridインスタンスを使用しています。 このリストグリッドインスタンスでは、データソースを使用してデータを埋めています。設定データ用 方法:リストグリッドのデータソースインスタンス
//エントリポイント法私は、新しいデータソースのインスタンスを追加したいグリッドの行をクリックするだけで
public void init() {
final ListGrid grid = new ListGrid();
DataSource ds= new DataSource();
ds.setClientOnly(true);
setDataSourceField(ds);
ds.setTestData(getGridData());
grid.setFields(getGridFields());
grid.setDataSource(ds);
setGridProperty(grid);
grid.addClickHandler(new ClickHandler(){
@Override
public void onClick(ClickEvent event) {
DataSource ds= new DataSource();
ds.setClientOnly(true);
setDataSourceField(ds);
ds.setTestData(getGridData());
grid.setFields(getGridFields());
grid.setDataSource(ds);
grid.draw();
}
});
myCanvas.addChild(grid);
}
//ダミーデータ
private static ListGridRecord[] getGridData() {
ListGridRecord record = new ListGridRecord();
record.setAttribute("id", "1");
record.setAttribute("name", "11");
record.setAttribute("address", "111");
ListGridRecord record1 = new ListGridRecord();
record1.setAttribute("id", "2");
record1.setAttribute("name", "222");
record1.setAttribute("address", "222");
return new ListGridRecord[] { record, record1 };
}
//grid property
private static void setGridProperty(ListGrid grid) {
grid.setWidth("90%");
grid.setHeight(125);
grid.setAutoFetchData(true);
}
//fields
private static ListGridField[] getGridFields() {
ListGridField field = new ListGridField("id");
ListGridField field1 = new ListGridField("name");
ListGridField field2 = new ListGridField("address");
return new ListGridField[] { field, field1 ,field2};
}
//data source field
protected static void setDataSourceField(DataSource dataSource) {
DataSourceField idField = new DataSourceField("id", FieldType.TEXT);
idField.setPrimaryKey(true);
DataSourceField nameField = new DataSourceField("name",
FieldType.TEXT);
DataSourceField addField = new DataSourceField("address", FieldType.TEXT);
dataSource.setFields(nameField, idField, addField);
}
グリッドには表示されますが、データは表示されません。 )
これも試しました –