#nattable
#nattable
Вопрос:
Я хотел бы поместить пользовательский прослушиватель на полосу прокрутки слоя видового экрана, чтобы запускать другой код при перемещении полосы прокрутки. В настоящее время я расширил HorizontalScrollBarHandler и переопределил метод handleEvent(). Обработчику необходимо получить полосу прокрутки из ViewportLayer, но, к сожалению, она закрыта и не имеет метода получения. Есть ли какой-либо другой способ, которым я могу получить доступ к полосе прокрутки для использования с моим пользовательским обработчиком?
Ответ №1:
NatTable
является a Canvas
, который является Scrollable
. Так что на самом деле вам не следует пытаться разобраться с внутренними компонентами. Должна быть возможность вызвать natTable.getVerticalBar()
и natTable.getHorizontalBar()
зарегистрировать вашего слушателя.
В качестве альтернативы вы могли бы реализовать свой собственный IScroller, как описано здесь: http://blog.vogella.com/2015/01/26/nattable-with-custom-scrollbars /
Но только для добавления слушателя должно быть достаточно использовать механизмы SWT по умолчанию.