Как получить TableViewer из таблицы

Я создал TableViewer в JFace.
Позже я перебираю UI-Tree и имею доступ только к объектам SWT-API-Level.
В случае TableViewer это Таблица.
Из таблица, мне нужна тогда ссылка на TableViewer.

Кто-нибудь знает как это сделать?


person strangeoptics    schedule 16.01.2012    source источник


Ответы (2)


@Мартти прав. Невозможно напрямую через API просмотра.

Для случаев, когда мне нужно получить доступ к средству просмотра из элемента управления, я обычно добавляю viewer.getControl().setData(Viewer.class.getName(), viewer); — позже я могу снова получить средство просмотра с помощью viewer.getControl().getData(Viewer.class.getName();

Я предпочитаю этот метод сохранению отдельного Map<Control, Viewer>, так как он автоматически очищается :-)

person Tonny Madsen    schedule 16.01.2012
comment
Да, это, очевидно, единственный выход.‹br›Жаль, что JFace не помещает средство просмотра уже в лежащий в основе SWT-Control.‹br› Я должен сделать запрос ) - person strangeoptics; 18.01.2012

Невозможно. Единственный способ сохранить ссылку на созданный вьюер.

person Martti Käärik    schedule 16.01.2012