Имя комбинированного списка SWT / пара ключей - PullRequest
6 голосов
/ 27 мая 2010

Я хочу, чтобы текст говорил одно, а значение - другое

Текстовый ключ

Но для добавления элементов требуется только строка.

Как Java-программисты обычно хранят пары текст / идентификатор в выпадающих списках

1 Ответ

13 голосов
/ 31 мая 2010

Возможно, вы можете использовать метод setData (ключ строки, значение объекта) в комбинированном списке, чтобы достичь желаемого.

Пример:

Combo box = new Combo(parent, SWT.DROP_DOWN);
String s = "Item 1";
box.add(s);
box.setData(s, "Some other info or object here");
s = "Item 2";
box.add(s);
box.setData(s, "This is item two");

String value = (String)box.getData("Item 2");
// value is now "This is item two"

Обратите внимание, что метод getData возвращает объект. Поэтому вы должны привести его к типу, который вы установили с помощью метода setData.

Из-за этого вы не ограничены в выборе значений Strings. Вы можете установить любой объект в качестве значения с помощью метода setData. Просто убедитесь, что вы правильно произвели при получении данных методом getData.

Edit: Кстати, вы можете использовать методы setData и getData в любом виджете SWT.

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