как я могу получить значения ComboFieldEditor? - PullRequest
3 голосов
/ 07 февраля 2012

Я создал один ComboFieldEditor в своем коде, и я хочу получить значение, прежде чем сохранить его в хранилище настроек. В случае StringFieldEditor есть один метод, такой как getStringValue(). Но в случае ComboFieldEditor такого метода не существует. Как я могу получить те значения, которые я дал, и использовать их?

Ответы [ 2 ]

2 голосов
/ 06 июля 2012

@ codejammer - ваше (первое) решение по какой-то причине не работает для меня (скорее всего потому, что FieldEditorPreferencePage назначает себя слушателем).

Так что мое решение состоит в том, что если ваш класс страницы предпочтений расширяет FieldEditorPreferencePage, вы можете переопределить функцию propertyChange (не забудьте выполнить эту функцию из суперкласса). В propertyChange я могу проверить, из какого поля происходит событие (PropertyChangeEvent.getSource ()), а затем получить новое значение (PropertyChangeEvent.getNewValue ()).

@Override
public void propertyChange(PropertyChangeEvent event) {
super.propertyChange(event);
if(event.getSource() == myCombo){
           //do your stuff here, or store new value in variable
    System.out.println(event.getNewValue());
}
}
2 голосов
/ 09 февраля 2012
        combofieldeditor.setPropertyChangeListener(new IPropertyChangeListener() {

        @Override
        public void propertyChange(PropertyChangeEvent event) {
            System.out.print(event.getNewValue());
        }
    });

getNewValue предоставит вам выбранное пользователем значение.Кроме того, вы можете позвонить в магазин и читать из магазина предпочтений.

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