Ссылка на элемент списка Gwt для объекта - PullRequest
4 голосов
/ 11 июля 2011

У меня есть список, и я хочу добавить несколько предметов. Есть только методы для добавления элементов в виде строки, но Я хочу добавить элемент в список со строкой и ссылкой на объект. Так что, если элемент был выбран в списке, я тоже получаю ссылку на объект. В противном случае я всегда должен искать с равным для правильного объекта.

Есть ли какая-либо опция?

Ответы [ 3 ]

8 голосов
/ 12 июля 2011

Попробуйте ValueListBox вместо ListBox.

2 голосов
/ 01 мая 2013

Это старый вопрос, но поскольку самого элегантного ответа здесь еще нет:

// Applicable for an object of specified type 'User'
ValueListBox<User> lbUser = new ValueListBox<User>(new Renderer<User>() {

  public String render(User user) {
    String s = "";
    if (user != null) {
      // Specify the format for the Strings to display per list item here. In this example, it is 
      // 'username (firstname lastname)'
      // For example: MTielemans (Mark Tielemans)
      s = user.getUsername() + "("+user.getFirstname()+" " + user.getLastname()+")";
    } else {
      s = "Select a user";
    }
    return s; 
  }

  public void render(User user, Appendable appendable) throws IOException {
      String s = render(user);
      appendable.append(s);
  }
});
2 голосов
/ 11 июля 2011

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

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