Как уже говорилось, «альфа-версия» нашей программы будет настлько примитивна, что не будет реализовывать преимущества клиент-серверного подхода. Это вынужденный шаг для того чтобы получить первоначальные навыки работы с компонентами Delphi для работы с БД. В этой и последующих лабораторных работах остновным компонентом, с которым нам придется иметь дело является компонент TSimpleDataSet. По ряду причин он на подходит более всех остальных. Вот его преимущества: во-первых, в отличие от компонентов TSQLTable и TSQLDataSet через него открыватся дотуп к таблице в режиме «чтение-и-запись», а не «только чтение». Во- вторых он может работать в трех режимах: как таблица, как запрос и как хранимая процедура. (последний режим, правда, нам не понадобится).
Компоненты, перечиленные в таблице 3.1 являются невизуальными (т.е. невидимыми пользователю во время работы программы. Для связи этих компонентов и визуальных компонентов главной формы (а в общем случае всех других форм проекта) используется компонент DataSourсe (источник данных), расположенный на закладке DataAccess палитры компонентов.
Для каждой таблицы (или запроса) имеющихся в БД, помещаем на форму DataModule свою пару компонентов TSimpleDataset и TDataSource. С учетом того, что наша БД включает три таблицы, размерстим на форме DataModule три пары этих компонентов. Для большего удобства работы с этими парами рекомендуеся переименовать эти компоненты в что-то разумное, скажем Stud_Table и Stud_Src, Disc_Table и Disc_Src, Usp_Table и Usp_Src или иные имена, по Вашему вкусу. Напоминаем, что регистр символов в Delphi не имеет значения. Общее правило работы этой связки таково (все операции проводятся через инспектор объектов):
· В свойстве Connection всех компонентов TSimpleDataset указывается имя соединения с БД (в нашем случае MyBase);
· Открывается ветка свойств Dataset и меняются значения следующих свойств: CommandType на ctTable (Режим работы – Таблица), а в в свойстве
· В свойстве CommandText указывается имя таблицы БД с которой будет связан данный компонент.
· Свойствe Active всех компонентов TSimpleDataset задается значение true (истина);
· У компонентов TDataSource в свойстве DataSet указываются имена тех наборов данных (компонентов TSimpleDataset), с которыми требуется установить связь.
На этом настройка невизуальных компонентов завершена и можно приступать непосредственно к созданию интерфейса, используя визуалные компоненты работы с БД.
Стандартные визуалные компоненты расположены на закладке DataControls Палитры компонентов. Почти все они в качестве предков имеют компоненты с закладок Standart и Additional (а стоит ли их здесь перечислять??? :) . Новыми, значимыми для нас свойствами у этих компонентов будут: DataSource – свойство, указывающее на источник данных для этого компонента и DataField – свойство, указывающее на одно из полей данных таблицы (отметим, что у компонентов TDBNavigator и TDBGrid свойство DataField отсутствует). О компонентах TDBLookUpListBox и TDLookUpComboBox речь пойдет несколько ниже.
При разработке самой первой версии интерфейса нас устроит следующий его вид: форма содержит две закладки на первой имеется возможность просматривать списки студентов и их оценки, на второй – добавлять в учебный план дисциплины.
На закладке Win32 палитры компонентов выбираем компонент TPagecontrol и помещаем его на главную форму нашего проекта. Щелкнув правой кнопкой мыши в центральной его части, выбираем пункт «New page» и добавляем новую страницу. Повторяем операцию и добавляем вторую страницу. Меняем их свойства Title (Заголовок) на осмысленные знначения (например «Студенты и оценки» и «Учебный график»). Помещаем на первую страницу («Студенты и оценки») два компонента TDBGrid, а на вторую («Учебный график») один. С помощью инспектора объектов меняем их (компонентов TDBGrid) имена на Stud_Grid, Uspev_Grid и Disc_Grid, выравниваем их на страницах по собственному вкусу. Последний шаг – с помощью инспектора объектов устанавливаем в свойстве DataSource компонентов DBGrid значения согласно именам имеющихся у нас на форме DataModule источников данных (TDataSourсe). Поскольку указанные компоненты расположены на другой форме, их имена следует указывать с префиксом (с именем формы), например, DataModule1.StudSrc.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.