eclipse rcp: почему ViewerCell и ViewerRow не имеют метода для получения индекса строки? - PullRequest
2 голосов
/ 03 июля 2011

В классе ViewerCell есть метод getColumnIndex, почему бы не предоставить метод для возврата индекса строки?Это действительно смущает меня.Пожалуйста, дайте мне некоторое объяснение по этому поводу.

Ответы [ 2 ]

3 голосов
/ 03 июля 2011

Вы можете использовать table.getItems().indexOf(cell.getElement()) (+/-).

Причина этого находится в виртуальных таблицах. Для них вы не можете легко найти индекс строки ...

0 голосов
/ 03 апреля 2012

Мое решение здесь (расширьте TableViewer и добавьте этот метод в ваш родительский класс):

public int getRowIndex(ViewerCell cell) {
    YourRowType row = (YourRowType) cell.getElement();
    int result = 0;
    for (int i = 0; i < this.doGetItemCount(); i++) {
        if (this.getElementAt(i).equals(row)) {
            result = i;
            break;
        }
    }
    return result;
}
...