Combobox в ExtJS. Установка автоматической ширины выпадающего списка

При работе с интерфейсной частью (на frontend`е), часто бывает, что функциональный элемент, такой как combobox, например, не должен стилистически зависеть от данных, с которыми он работает. Но при этом пользователя нельзя ограничивать в usability.

При работе на frontend`е с фреймворком ExtJS (v4.2.2) возникла необходимость разделить определение ширины самого комбобокса (которая может быть как фиксированной, так и зависеть от соседних элементов в рамках одного блока) от ширины выпадающего списка, который появляется при нажатии на combobox. Ширина должна всегда иметь максимальное значение по содержимому, т.е. зависеть от самого длинного значения в store combobox`а. Казалось бы ничего сложного в этой задаче нету: гугл + офф. документация (а лучше наоборот) должны решить этот вопрос. Но в случае с ExtJS не все так просто :)

Поэтому на заметку каждому программисту, работающему с этим фреймворком, возможно, будет интересно знать, что у самого combobox`а есть параметр, который действительно отвечает за привязку ширины выпадающего списка к ширине самого combobox`а. Собственно: matchFieldWidth.
По умолчанию это значение установлено в true, поэтому для установки автоматической ширины выпадающего списка нужно установить в false.

Результат на лицо:

Значение по умолчанию: ExtJS Combobox Droddown menu wifth http://itheap.info/
И после установки matchFieldWidth в false: ExtJS Combobox Droddown menu wifth http://itheap.info/

Спасибо за внимание и приятных решений! :)
  • +1
  • 29 января 2015, 18:12
  • a1ex

Комментарии (0)

RSS свернуть / развернуть
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.
comments powered by Disqus