2016-05-10 2 views
0

Я разрабатываю плагин eclipse, где у меня есть NatCombo (раскрывающийся список) внутри NatTable. Мне нужно динамически изменить выпадающее меню фильтра со списком. Я могу установить элементы в свой поле со списком с помощью метода natCombo.setItems() (где я могу добавить фильтр, фильтрованный фильтрами).Удалить элементы из NatCombo

Однако я не смог найти метод, который удаляет элементы вместо этого, или который опустошает предыдущие элементы в поле со списком, прежде чем добавлять новые элементы. Я могу добавлять неограниченное количество элементов в мое меню для выпадающего списка.

Есть ли способ удалить товары? Могу ли я его реализовать? Если да, то как я мог?

+1

Не могли бы вы объяснить, что вы пытаетесь сделать? Я никогда не слышал, чтобы кто-то использовал NatCombo внутри NatTable исключительно. Не существует методов добавления и удаления, поскольку он предназначен для использования внутри ICellEditor. И там он создается каждый раз, нет необходимости в модификациях, пока он открыт. Поэтому я не понимаю ваш случай использования. –

+0

Извините, NatCombo находится внутри ICellEditor, как вы сказали. Я не могу избавиться от natcombo и воссоздать его с новыми значениями выпадающего списка (в этом случае вызывается исключение) и не изменяйте поле со списком. то есть удалите старые значения из раскрывающегося списка перед добавлением новых значений с помощью natCombo.setItems(). Пожалуйста, помогите мне, у меня недостаточно знаний о жизненном цикле natTable/natCombo. – Raj

+0

Чтобы быть более конкретным, я добавляю автоматическую полную функцию к уже существующему natCombo (сделан моим старшим, который ушел с работы). Я неспособный проследить вещи и продолжить. При нажатии клавиши результат в выпадающем списке natCombo должен динамически меняться. Я извлекаю требуемые значения динамически (внутри keyListener to natCombo) и устанавливаю эти значения, но просто не могу удалить старые значения из natCombo перед установкой новых значений. Любое решение? – Raj

ответ

0

Я не знаю вашего прецедента и использует ли вы одну из наших реализаций редактора по умолчанию или создал свой собственный. Но есть в основном два ответа, в зависимости от вашего случая использования:

  1. Вы хотите, чтобы обеспечить динамическое содержимое в выпадающем списке - это делается с помощью IComboBoxDataProvider и объяснено в разделе часто задаваемых вопросов https://www.eclipse.org/nattable/documentation.php?page=faq
  2. Вы хотите, чтобы фильтровать содержимое открытое combobox - это не поддерживается в версиях < = 1.3.0, но будет добавлено с NatTable 1.4.0, который находится на пути при написании этого ответа. Снимок уже доступен, если вы хотите попробовать.
+0

Спасибо за вашу ценную информацию. – Raj

+0

Да Я хочу предоставить динамический контент в поле со списком через IComboBoxDataProvider. Я тоже это сделал, но динамическое содержимое для natcombo добавляется только тогда, когда вы выбираете комбо (cellEditor) в первый раз, но не для КАЖДОГО КЛЮЧА НАЖМИТЕ динамически. Итак, я использовал прослушиватель ключей для natcombo внутри getValues ​​(), где я пытаюсь установить значения в комбо. – Raj

+0

Опять же, то, что вы пытаетесь сделать, не работает. Либо вы хотите получить поддержку контента, а затем используйте приложение ContentTellEditor для контента NatTable 1.4 или хотите выполнить фильтрацию, а затем используйте NatTombo NatTable 1.4. –

Смежные вопросы