- •Использование таблиц и компонентов отображения данных в системе Delphi
- •Теоретические сведения Компоненты, предназначенные для работы с базами данных
- •Использование Мастера форм бд
- •Создание приложений и изучение свойств компонентов
- •Свойства компонентов для задания 1
- •Свойства компонентов для задания 3
- •Типы замещающих компонентов
- •Свойства компонентов для задания 6
- •Свойства компонента dbComboBox1
- •Лабораторное задание и порядок выполнения работы
- •Требования к отчету
Создание приложений и изучение свойств компонентов
Задание 1.С помощью Мастера форм БД создать приложение с формой типа сетка для просмотра таблицыPARTS.DB из БДDBDEMOS, содержащей информацию о поставках изделий. Проверить работу приложения и ознакомиться со свойствами компонентов, помещенных в форму Мастером форм БД.
Пояснение к заданию 1. Мастер форм помещает в форму компоненты Table1 и DataSource1 для доступа к данным, компонент DBGrid1 для отображения данных из PARTS.DB в стандартном табличном виде (в виде сетки) и компонент DBNavigator для управления данными. В табл.1 приведены значения важнейших свойств используемых компонентов, автоматически установленные Мастером форм; при разработке приложения вручную их должен задать программист.
Таблица 1
Свойства компонентов для задания 1
Свойство |
Значение |
Примечание |
Table1 : TTable | ||
Active |
False |
Управляет открытием таблицы |
DatabaseName |
DBDEMOS |
Спецификация каталога или псевдоним БД |
Name |
Table1 |
Имя компонента |
TableName |
parts.db |
Имя файла с таблицей |
DataSource1 : TDataSource | ||
AutoEdit |
True |
Автоматически задает состояние Edit для набора данных при начале редактирования данных |
DataSet |
Table1 |
Имя компонента, через который передаются данные из БД и в БД |
Name |
DataSource1 |
Имя компонента |
DBGrid1 : TDBGrid | ||
DataSource |
DataSource1 |
Имя компонента, через который осуществляется обмен и управление данными |
Name |
DBGrid1 |
Имя компонента |
DBNavigator : TDBNavigator | ||
DataSource |
DataSource1 |
Имя компонента, через который осуществляется обмен и управление данными |
Name |
DBNavigator |
Имя компонента |
VisibleButtons |
[nbFirst,nbPrior,..., nbRefresh] |
Список используемых кнопок навигатора |
Свойство Active компонента Table1, управляющее открытием таблицы, может устанавливаться вручную в окне инспектора объектов или программно методами Open (соответствует Active=True) и Close (соответствует Active=False). При установке свойства Active=True содержимое открытой таблицы появляется на экране в визуальном компоненте, отображающем данные. Следует запомнить, что для компонента типа TTable значения свойств DatabaseName и TableName доступны для изменения только при Active=False.
К
К следующей
записи (nbNext)
Вставить запись (nbInsert)
Редактировать
запись (nbEdit)
К первой записи
Отменить редакти-
(nbFirst)
рование
(nbCancel)
К предыдущей Восстановить
запись
записи (nbPrior)из БД (nbRefresh)
К последней
Удалить Сохранить запись
записи (nbLast)запись (nbDelete)
в БД (nbPost)
Рис.7.
Кнопки навигатора
При создании приложения без использования Мастера форм программисту после размещения необходимых компонентов в рабочем поле формы надо устанановить связь между компонентами, выполнив следующую последовательность действий:
1) задать спецификацию используемого каталога или псевдоним БД в свойстве DatabaseName компонента типа TTable;
2)задать в свойствеTableName компонента типа TTable имя файла, содержащего нужную таблицу. Имя файла выбирается из списка, который появляется при нажатии кнопки, расположенной в строке инспектора объектов, соответствующей свойствуTableName;
3)в свойствеDataset компонента типа TDataSource задать имя используемого компонента типа TTable. Значение свойстваDatasetвыбирается из списка аналогично тому, как выбиралось имя файла в п.2;
4)задать в свойствеDataSourceвизуального компонента, отображающего данные или управляющего данными (в задании 1 это компоненты типа TDBGrid и TDBNavigator), имя компонента типа TDataSource, через который осуществляется обмен и управление данными. Значение свойстваDataSourceвыбирается из списка аналогично тому, как выбиралось имя файла в п.2.
Задание 2.С помощью Мастера форм БД создать приложение с формой типа ввод/редактирование для просмотра таблицы EMPLOYEE.DB из БД DBDEMOS, содержащей информацию о служащих. Проверить работу приложения и ознакомиться со свойствами компонентов, помещенных в форму Мастером форм БД.
Пояснение к заданию 2. В форме, созданной Мастером форм, для отображения значений полей текущей записи используются компоненты типа TDBEdit, которые связаны с компонентом DataSource1 через свои свойстваDataSource. Имя поля, значение которого отображается в компоненте типа TDBEdit, задается свойствомDataField этого компонента. Надписи к полям задаются компонентами типа TLabel.
Задание 3.С помощью Мастера форм БД создать приложение с формой типа главная/подчиненная для просмотра таблицы CUSTOMER.DB и связанной с ней таблицы из БД DBDEMOS, в которых содержится информация о компаниях-покупателях и сделанных заказах. Информацию из каждой таблицы отобразить в компоненте типа TDBGrid. Проверить работу приложения и ознакомиться со свойствами компонентов, помещенных в форму Мастером форм БД.
Пояснение к заданию 3. Мастер форм помещает в форму для каждой таблицы свой комплект компонентов типа TTable, TDataSource, TDBGrid для доступа к данным и их отображения, а также один компонент типа TDBNavigator для управления данными, хранящимися в главной таблице CUSTOMER.DB. В табл.2 приведены значения важнейших свойств используемых компонентов, автоматически установленные Мастером форм; при разработке приложения вручную их должен задать программист.
При создании приложения без использования Мастера форм программисту необходимо выполнить следующую последовательность действий:
1) разместить в форме для каждой из связанных таблиц по одному комплекту из трех компонентов, обеспечивающих доступ, управление и отображение данных;
2)задать свойства компонентов из комплекта для главной таблицы (см. табл.2);
3) задать свойства компонентов из комплекта для подчиненной таблицы, установив связь между полями связанных таблиц (см. табл.2);
4) разместить навигатор и связать его с главной таблицей.
Примечание. Для связи подчиненной таблицы с главной таблицей можно использовать конструктор связанных полей (Field Link Designer), который вызывается из инспектора объектов нажатием кнопки, расположенной в строке свойстваMasterFields. Окно конструктора имеет вид, подобный показанному на рис.6, и позволяет выбрать нужный индекс (индексный ключ) и установить связь между полями подчиненной (detail) и главной (master) таблиц.
Задание 4.Приложение, созданное при выполнении задания 3, дополнить компонентами, обеспечивающими доступ, управление и отображение данных из таблицы ITEMS.DB, и связать эту таблицу в качестве подчиненной с таблицей ORDERS.DB. Проверить работу приложения, которое должно отображать данные из трех связанных таблиц.
Пояснение к заданию 4. Чтобы в рабочем поле формы появилось свободное место для размещения дополнительных компонентов, нужно увеличить размер формы, а для компонентов типа TDBGrid задать значение свойстваAlign=alNone и уменьшить высоту этих компонентов.
Таблица 2