Почему выбранная строка частично скрыта в GWT 2.4 DataGrid? - PullRequest
1 голос
/ 01 декабря 2011

При прокрутке вниз страницы DataGrid с помощью клавиатуры последний видимый элемент видимого диапазона, если он частично скрыт, не становится полностью видимым, когда его выбирают.То же самое происходит при выборе строки с помощью мыши.Строка становится достаточно видимой, чтобы полностью отобразить значение столбца Number , как видно на снимке экрана, но изображение остается частично затемненным.То же самое происходит без видимого нижнего колонтитула, так что нижний колонтитул, скрывающий строку, здесь, похоже, не является проблемой.Кроме того, поведение идентично при выборе первого видимого элемента - только значение Number становится полностью видимым.

DataGrid example

Этовроде небольшая проблема, но поскольку DataGrid в моем случае в основном просматривается с помощью клавиатуры, это действительно очень сильно влияет на удобство использования.Итак - Есть идеи, что можно сделать, чтобы обеспечить полную видимость строки при ее выборе?

Большое спасибо заранее.

1 Ответ

1 голос
/ 02 декабря 2011

Расширение DataGrid и переопределение setKeyboardSelected (int, boolean, boolean) следующим образом, кажется, добиваются цели, но, конечно, являются взломом и совсем не оптимальным решением.

@Override
protected void setKeyboardSelected(int index, boolean selected, boolean stealFocus) {
    if (KeyboardSelectionPolicy.DISABLED == getKeyboardSelectionPolicy() || !isRowWithinBounds(index) || getColumnCount() == 0) {
        return;
    }
    super.setKeyboardSelected(index, selected, stealFocus);
    TableRowElement tr = getRowElement(index);
    tr.scrollIntoView();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...