Работа с объектами ComboBox и DBCombo

Применение баз данных для ввода данных

Выше указывалось, что применение баз данных обеспечивает упрощение процедуры ввода данных за счет замены ввода данных с клавиатуры выбором данных из некоторого списка. Список можно создать на стадии проектирования программы с помощью объектов ComboBox и ListBox, а в дальнейшем его можно расширить или наоборот сузить методами, рассмотренными в главе 4.

Очень удобно указанный список формировать с помощью готовых баз данных. Для этой цели можно применять стандартные объекты ComboBox и ListBox, но лучше применять специализированные объекты DBCombo и DBList. Принципиальное отличие специализированных объектов от стандартных заключается в возможности автоматической загрузки содержимого базы данных в список выбираемых элементов, в то время как для стандартных объектов этот список приходится формировать каким-либо образом. Выбранный элемент списка, как и в обычных объектах ComboBox и ListBox записывается в свойство Text.

Пример формы, управляющей с помощью базы данных объектами ComboBox и DBCombo, приведен на рис. 6.4. На нем показаны (сверху вниз):

Рис. 6.4. Форма с объектом ComboBox · объект ComboBox с двумя кнопками "+" и "-", · объект DBCombo, · объект Data. ComboBox и DBCombo являются объектами, отображающими на экране содержимое базы данных. Кнопки справа от объекта ComboBox обеспечивают добавление элементов в список и исключение элементов из списка (см. главу 4 ).

Объект Data обеспечивает доступ к базе данных и движение по ее файлу посредством кнопок. Он автоматически порождает объект типа Recordset. Важнейшими свойствами объекта Data являются:

  • DataBaseName – спецификация используемого файла базы данных,
  • Connect – указывает тип базы данных (файлы, созданные различными версиями СУБД Access, dBase, Paradox, электронных таблиц Lotus 1-2-3 и Excel),
  • Exlusive – признак монопольного доступа приложения к данным,
  • Caption – надпись, появляющаяся между кнопками объекта,
  • RecordSourse – имя таблицы базы данных, выводимой в списки объектов ComboBox и DBCombo[13].

Для управления надписью Caption можно применить свойства PercentPosition и RecordCount объекта Recordset, порожденного объектом Data. Первое свойство содержит номер текущей записи, выраженный в процентах от общего числа записей, содержащегося в свойстве RecordCount: