Вкладка RX DBAware. Компонент TRxLookupEdit

   
На этом шаге мы рассмотрим компонент TRxLookupEdit.

    Компонент TRxLookupEdit (рис.1) представляет
собой редактор с возможностью как прямого ввода текста пользователем в строке редактирования,
так и выбора текста из выпадающего списка, заполняемого значениями из базы данных.
При открытом списке или при значении свойства PopupOnlyLocate = False
набор пользователем символов с клавиатуры приводит к позиционированию списка на ближайшую
запись, совпадающую с введенным текстом.


Рис.1. Компонент TRxLookupEdit

   
Для заполнения выпадающего списка используются свойства LookupSource, LookupField,
LookupDisplay и LookupDisplayIndex, аналогично списку компонента
TRxDBLookupCombo.
   Введенное пользователем или выбранное из списка значение доступно
через свойство Text. Свойство LookupValue (read-only)
позволяет получить значение ключевого поля из lookup-набора данных
(заданного свойством LookupField), если пользвателем был
сделан выбор из списка.
   Рассмотрим некоторые свойства компонента:

Таблица 1. Свойства компонента TRxLookupEdit

Свойство Описание
property PopupOnlyLocate: Boolean; Свойство определяет, будет ли производится поиск вводимого пользователем значения
в lookup-наборе данных при закрытом выпадающем списке.
По умолчанию имеет значение True, и поиск производится
только при открытом списке.
property LookupDisplayIndex: Integer; В случае если свойство LookupDisplay задает более одного
поля для отображения в списке, значение свойства LookupDisplayIndex определяет
номер поля, значение которого возвращается свойством DisplayValue и
отображается в строке компонента TrxDBLookupCombo.
property LookupValue: string; Run-time only. Свойство позволяет получить значение LookupField
из набора данных LookupSource, если текст в редакторе был выбран
из выпадающего списка.
Если текст был введен пользователем вручную, и в lookup-наборе данных
нет записей с соответствующим значением поля LookupDisplay, то
значение свойства LookupValue равно пустой строке.
При присвоении значения свойству LookupValue, если соответствующее
значение найдено в наборе данных, свойству текст присваивается значение поля LookupDisplay.
property ListStyle: TLookupListStyle; Свойство определяет стиль отображения списка при наличии в нем нескольких колонок
(полей таблицы или запроса БД).

  • lsFixed (по умолчанию) - задает отображение колонок с
    фиксированной шириной, определяемой свойством DisplayWidth соответствующих полей
    БД.
  • lsDelimited - задает отображение значений из нескольких полей
    последовательно через разделитель, определенный свойством FieldsDelimiter.

   
Компонент TRxLookupEdit можно связать с таблицой и выбирать значение
определенных полей.

   Например, поместим на форму компоненты RxDBGrid1, Table2,
DataSource2 – для связи базы данных и таблицы, RxLookupEdit1 (рис.2).


Рис.2. Форма с размещенными на ней компонентами
RxDBGrid1, Table2, DataSource2, RxLookupEdit1
   
Установим свойство LookupSource компонента RxLookupEdit1 в
значение DataSource2, LookupField в значение ‘Адрес',
свойство PopupOnlyLocate = False, тогда, выбирая в строке
редактирования компонента значение, в таблице будет происходить позиционирование на
строку, имеющую это значение (рис.3(а-б)).


Рис.3а. Выбор текста в редактор не совершен


Рис.3б. Выбор текста с помощью списка

      
Текст этого примера можно взять здесь.

   
На следующем шаге мы рассмотрим компонент TDBDateEdit.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий