2012-07-06 39 views
3

我在我的GWT屏幕中有一個單元格表格。現在要求在屏幕上會出現一些按鈕,單擊一個可編輯的行將被插入到單元格表中。如果我沒有錯,這就是所謂的內聯編輯。在GWT單元格表中進行在線編輯

有人可以幫我嗎?我剛開始在GWT工作。

回答

1

下面是向celltable添加新可編輯行的非常簡單的示例。我希望我明白你的意思:)

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; 
     } 
    } 
+0

我想只做點擊添加按鈕可編輯的行。如果表中已經有一些行,則不應該進行編輯 – Anand 2012-07-11 12:53:04