2012-02-24 3 views
1

У меня есть CellTable отображается, как показано enter image description hereКак открыть всплывающую панель, щелкнув ячейку в CellTable?

ценам ниже

На нажатием кнопки Delete Я хочу, чтобы открыть панель Popup в центре экрана, который должен содержать панель Flow и кнопки в нем.
Прямо сейчас на кнопку Удалить У меня есть следующие FUNCTION-

deleteColumn.setFieldUpdater(new FieldUpdater<Contact, String>() { 
     public void update(int index, Contact object, String value) {   
      try { 
       int removeIndex = CONTACTS.indexOf(object); 
       CONTACTS.remove(removeIndex); 

       table.setRowCount(CONTACTS.size(), true); 
       table.setRowData(CONTACTS); 

       table.redraw(); 

      } catch(Exception e) { 
       e.printStackTrace(); 
      }}); 

Я не понимаю, как обновить свою функцию для того же. Образец кода, безусловно, поможет.

ответ

2

Как насчет только отображения PopupPanel?

Что-то вроде этого:

PopupPanel popup = new PopupPanel(true); 
FlowPanel panel = new FlowPanel(); 
//add Button etc 
popup.setSize("1100px","500px"); 
popup.clear(); 
popup.add(panel); 
popup.show(); 
popup.center(); 

Если вы хотите, чтобы отобразить диалоговое окно подтверждения, чем этот код проще:

if (Window.confirm("Do you really want to delete the dataset?")) 
{ 
    //delete code 
} 
+0

Спасибо! работал отлично! – Prince

0

Что-то вроде этого?

ButtonCell buttonCell = new ButtonCell(){ 
     @Override 
     public Set<String> getConsumedEvents() { 
      // TODO Auto-generated method stub 
      //return super.getConsumedEvents(); 
      Set<String> events = new HashSet<String>(); 
      events.add("click"); 

      return events; 
     } 
    }; 
    productTable.addColumn(new Column<ProductDetails, String>(buttonCell) { 
     @Override 
     public String getValue(ProductDetails object) { 
      // TODO Auto-generated method stub 
      return "Edit"; 
     } 
     @Override 
     public void onBrowserEvent(Context context, Element elem, 
       ProductDetails object, NativeEvent event) { 
      // TODO Auto-generated method stub 
      super.onBrowserEvent(context, elem, object, event); 
      if("click".equals(event.getType())){ 
       presenter.onEditButtonClicked(object); 
      } 
     } 
    }, "Commands"); 

Пожалуйста, попробуйте и дайте мне знать результат. Я просто написал и еще не тестировал: |