2

テーブルがあり、ダブルクリックした行からデータを受け取りたいです。どうすればいいですか?しかし、ダブルクリックイベントが機能しないため、addCellPrevieHandler を使用できません。

Datagrid<Contract> table = new Datagrid<Contract>();
table.addDomHandler(new DoubleClickHandler(){
  @Override
  public void onDoubleClick(final DoubleClickEvent event) {    
    //I want to receive data from row here    
  }
}, DoubleClickEvent.getType());
4

1 に答える 1

2

選択モデルを使用できます。

Datagrid<Contract> table = new Datagrid<Contract>();
SingleSelectionModel<Contract> selectionModel = new SingleSelectionModel<Contract>();
table.setSelectionModel(selectionModel);
table.addDomHandler(new DoubleClickHandler() {
    @Override
    public void onDoubleClick(final DoubleClickEvent event) {
        Contract selected = selectionModel.getSelectedObject();
        if (selected != null) {
            // TODO
        }
    }
}, DoubleClickEvent.getType());
于 2013-09-02T16:03:41.960 に答える