Получить кликнул ячейку из заголовка в bodytable - PullRequest
1 голос
/ 09 ноября 2010

Я пытаюсь заставить выбранную ячейку в таблице заголовков выполнить сортировку, но я хочу обработать это в другом классе, классе, который реализует таблицу.Если я записываю ячейку в классе headertable, печатается правильный идентификатор ячейки, но при добавлении обработчика кликов в реализующий класс идентификатор всегда равен 0.

Пример:

public class CustomerDetailsHoldingsTable extends SimpleTable<Holding> 
                                                  implements ClickHandler {

  TableDataSource<Holding> ds;

  Public CustomerDetailsHoldingsTable () {
    this.headerTable = new HeaderTable();
    this.headerTable.addClickHandler(this);
  }

  @Override
  public void onClick(ClickEvent event) {
    GWT.log("Clicked cell with id" + 
             getCellForEvent(event).getCellIndex());
  }


  public class HeaderTable extends Grid { 
    ...
    ...
  }

Строка GWT.log всегда печатает 0 независимо от того, какая ячейка нажата в заголовочной таблице.Почему это?

1 Ответ

1 голос
/ 09 ноября 2010

Вам нужно будет вызвать getCellForEvent для вашего объекта сетки, например:

@Override
  public void onClick(ClickEvent event) {
    GWT.log("Clicked cell with id" + 
             this.headerTable.getCellForEvent(event).getCellIndex());
  }

Из документов :

При наличии события щелчка вернуть ячейку который был нажат, или нуль, если событие не попал в этот стол. Клетка может также будет нулевым, если событие click не встречаются в определенной ячейке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...