Как прослушать изменения содержимого списка SWT? - PullRequest
3 голосов
/ 24 января 2012

Я попытался использовать прослушиватель для события SWT.Modify. Это работает для текста, но, кажется, не работает для списка. То есть следующее не работает:

    myList = new List(listComp, SWT.MULTI|SWT.BORDER|SWT.V_SCROLL);
    myList.addListener(SWT.Modify, new Listener() {
        public void handleEvent(Event e) {
            System.out.println("My list modified");
            dirty=true;
            }
        });

Спасибо за вашу помощь.

Ответы [ 3 ]

1 голос
/ 24 января 2012

Вы должны зарегистрировать слушателей вашей модели, которая отображается со списком, и прослушивать изменения там вместо виджета.

1 голос
/ 24 января 2012

Прослушивание события SWT.Selection вместо SWT.Modify.

Также рассмотрите возможность использования ListViewer вместо списка, который имеет методы addSelectionChangedListener() и addPostSelectionChangedListener() (последний используется для уведомления, когда пользователь «останавливается» на элементе при навигации по списку с клавиатурой, вместо уведомления о каждом элементе).

0 голосов
/ 21 октября 2013

Почему бы вам не создать свой собственный настраиваемый список (например, проверить http://www.snip2code.com/Snippet/11489/Custom-SWT-List-Box) и напрямую управлять событиями из своего класса?

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