Gwt, CellTable, как я могу узнать, какой столбец пользователь нажимает для сортировки? - PullRequest
2 голосов
/ 30 сентября 2011

Написание приложения GWT.

У меня есть CellTable и код, полученный с сайта кода Google-example.

Мне нужно выполнить сортировку на стороне сервера, нажав на таблицустолбцы.

Мой код для этого:

AsyncDataProvider<MYOBJECT> dataProvider = new AsyncDataProvider<MYOBJECT>() {
 @Override
 protected void onRangeChanged(HasData<MYOBJECT> display) {
   final Range range = display.getVisibleRange();

   ...
   int sortingColumnIndex = 0;
   boolean isAscending = sortList.get(sortingColumnIndex).isAscending();

   // some server-side call here
 }

Итак, как я могу узнать, на какой столбец нажимает пользователь?Т.е. реальный индекс столбца заголовка столбца или что-нибудь для идентификации того, что пользователь щелкнул по столбцу?

У меня есть только Отображение HasData как событие, но этого недостаточно для определения столбца.

Ответы [ 2 ]

2 голосов
/ 30 сентября 2011

Сортировка CellTable на стороне сервера

Магическое число 0 - это индекс столбца сортировки в списке сортировки, а не индекс столбца из таблицы ячеек.Таким образом, sortList.get(0).getColumn() возвращает столбец, по которому щелкнул пользователь.Вам нужно беспокоиться о других столбцах в sortList, только если вы планируете реализовать сортировку по нескольким столбцам.

0 голосов
/ 15 июня 2012
ColumnSortList sortList = dataTable.getColumnSortList();
Column<?, ?> column = sortList.get(0).getColumn();

Выше приведен необходимый столбец.

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