Курсовая работа: Проектирование базы данных "Автовокзал"
7. DataSource обеспечивает взаимодействие набора данных с компонентами отображения данных. Чаще всего одному набору данных соответствует один компонент DataSource, хотя их может быть несколько. Компонент DataSourceдолжен быть связан с набором данных, значения полей которого требуется передать в параметры. Названия параметров должны соответствовать названиям полей этого набора данных, тогда свойство DataSourceначнет работать.
Еще одна функция компонента DataSourceзаключается в синхронизации поведения компонентов отображения данных с состоянием набора данных. Если набор данных работает в режиме "только для чтения", то компонент DataSourceобязан передать в компоненты отображения данных запрещение на изменение данных.
Компонент DataSourceорганизует передачу в компоненты отображения данных значений необходимых полей из текущей записи. При перемещении по записям набора данных текущие значения полей в компонентах отображения данных автоматически обновляются.
8. Компонент TDBNavigator при помощи свойства DataSourse связывается с компонентом TDataSourse и через него с набором данных. Такая схема позволяет обеспечить изменение текущих значений полей сразу во всех связанных с TDataSourse компонентах отображения данных. Таким образом TDBNavigatorтолько дает команду на выполнение перемещения по набору данных или другой управляющей операции, а всю реальную работу выполняет компонент набора данных и компонент TDataSourse. Компонентом отображения остается только применить данные от своих полей.
DBNavigatorсодержит следующие кнопки:
1. nbFirst - перемещение на первую запись набора данных
2. nbPrior - перемещение на предыдущую запись набора данных
3. nbNext - перемещение на следующую запись набора данных
4. nbLast - перемещение на последнюю запись набора данных
5. nbInsert - вставка новой записи в текущей позиции набора данных
6. nbDelete - удаление текущей записи, курсор перемещается на следующую запись
7. nbEdit - набор данных переводится в режим редактирования
8. nbPost - в базу данных переносятся все изменения в текущей записи
9. nbCancel - все изменения в текущей записи отменяются
10. nbRefresh - восстанавливаются первоначальные значения текущей записи, сделанные после последнего переноса изменений в базу данных.
9. DBGrid - этот компонент инкапсулирует двумерную таблицу, в которой сроки представляют собой записи, а столбцы поля.
Компонент DBGridявляется потомком классов TDBCustomGridи TCustomGridот TCustomGridнаследует все функции отображения и управления работой двумерной структуры данных. Класс TDBCustomGridобеспечивает визуализацию и редактирование полей из набора данных, причем TDBGridтолько публикует свойства и методы класса TDBCustomGrid, не добавляя собственных.
В компоненте TDBGridможно отображать произвольное множество полей использованного набора данных, но число записей ограничивать нельзя, в компоненте всегда присутствуют все записи связанного набора данных. Требуемый набор полей можно составить при двойном щелчке на компоненте, перемещенном на форму, или кнопкой свойства Colums в Инспекторе объектов.
Новая колонка добавляется при помощи кнопки Add New, после этого ее название появляется в списке колонок. Колонки в списке можно редактировать, удалять, менять местами. При помощи кнопки AddAllFieldsв сетку можно добавлять все поля набора данных.
Программирование работы приложения базы данных приведено в листинге (Приложение А).
Для фильтрации записей в наборах данных используются методы Filer, Filtered:
procedure TForm1. RadioGroup1Click (Sender: TObject);
begin
if RadioGroup1. ItemIndex=0 then Table3. Filtered: =false
else
begin
if RadioGroup1. ItemIndex=2 then
begin
table3. Filtered: =true;