GWT画面の1つにセルテーブルがあります。ここでの要件は、画面上にボタンがあり、クリックして編集可能な行をセルテーブルに挿入することです。私が間違っていなければ、これはインライン編集と呼ばれます。
誰かがそれを手伝ってくれませんか?私はGWTで働き始めたばかりです。
GWT画面の1つにセルテーブルがあります。ここでの要件は、画面上にボタンがあり、クリックして編集可能な行をセルテーブルに挿入することです。私が間違っていなければ、これはインライン編集と呼ばれます。
誰かがそれを手伝ってくれませんか?私はGWTで働き始めたばかりです。
これは、セルテーブルに新しい編集可能な行を追加する非常に簡単な例です。私はあなたが何を意味するのか理解したいと思います:)
public class Test
implements EntryPoint
{
public void onModuleLoad()
{
//create and attach table
final CellTable<A> table = new CellTable<A>();
RootPanel.get().add(table);
//add editable cell
table.addColumn(new Column<A, String>(new TextInputCell())
{
@Override
public String getValue(
A object)
{
return object.getA() == null ? "" : object.getA();
}
});
//put some data
ListDataProvider<A> dataProvider = new ListDataProvider<A>(
Arrays.asList(new A("AAA"), new A("BBB"), new A("CCC")));
dataProvider.addDataDisplay(table);
//add button with click handler
RootPanel.get().add(new Button("add new", new ClickHandler()
{
@Override
public void onClick(
ClickEvent event)
{
//add new object to visible items
List<A> data = new ArrayList<A>(table.getVisibleItems());
A newOne = new A();
data.add(newOne);
table.setRowData(data);
}
}));
}
class A
{
String a;
public A(
String a)
{
super();
this.a = a;
}
public A()
{
super();
}
public String getA()
{
return a;
}
public void setA(
String a)
{
this.a = a;
}
}