КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Редактирование формы
Создание формы для работы с двумя таблицами Ввод данных в таблицу с помощью созданной формы Создание формы для работы с одной таблицей Редактирование внешнего вида формы Редактирование внешнего вида формы. Можно осуществить следующие действия по редактированию формы: в строке Caption задают подпись на русском языке; в строке Bordericons для biMaximize выбирают False – это означает запрет на распахивание окна; в строке Position задают способ выравнивания формы на экране (например, по центру – poDesktopCenter); в строке Color выбирают цвет заливки формы; вставка картинки на форму – вкладка Additional, кнопка Image, свойство Picture, кнопка Load, осуществляют выбор файла с картинкой. Для вставленной картинки в панели свойств можно установить: - в строке stretch значение True (установка размера картинки по размеру формы); - в строке transparent значение True (установка прозрачного фона для картинки).
2. СОЗДАНИЕ ФОРМ ДЛЯ ВВОДА И РЕДАКТИРОВАНИЯ ДАННЫХ
Формы создают для ввода, редактирования или просмотра данных в одной или нескольких таблицах базы данных. Создать форму для работы с одной таблицей можно следующим образом. 1. Выбрать или создать новую форму (выбрать - кнопка View Form (2-я кнопка слева), создать - кнопка New Form на панели инструментов (4-я кнопка слева)). 2. На форме поставить из вкладки Data Access компонент DataSource. В модуле, соответствующем созданной форме (например, в модуле unit3), для доступа к модулю данных в разделе implementation выставить uses unit2. В свойстве DataSet компонента DataSource выбрать ADOTable для связи с конкретной таблицей. 3. Выбрать вкладку Data Controls. Щелкнуть по кнопке DBGrid и в форме. Данный компонент служит для отображения записей набора данных в табличной форме. Можно изменить размер формы, растащив границы. Для данного компонента в свойстве DataSource устанавливают значение DataSource1 (это имя присвоено по умолчанию), выбрав его из списка. 4. Сохранить форму и проект на диске в созданной вами папке APP (File, Save All). 5. Запустить программу (кнопка RUN на панели инструментов, или F9, или пункты меню RUN, RUN). Работающая программа открывает непосредственный доступ к данным в выбранной таблице. Пример формы для работы с одной таблицей представлен на рис. 2.1. Форма приведена в режиме редактирования.
Рис. 2.1. Форма в режиме редактирования для работы с одной таблицей
Для добавления записи нужно нажать на клавиатуре клавишу Insert или, находясь на последней записи набора данных, нажать стрелку вниз. Таблица автоматически перейдет в режим добавления новой записи. После ввода значений в поля записи запомнить запись в наборе данных можно, перейдя на другую запись при помощи клавиш управления курсором. Отказаться от запоминания записи можно, нажав кнопку Esc. Для изменения записи следует переместить указатель текущей записи в нужное место и изменить значения там, где это нужно. Набор данных автоматически перейдет в режим редактирования. Для удаления записи следует установить на нее указатель текущей записи и нажать Ctrl+Del. После ввода и редактирования данных вернуться в режим редактирования формы, закрыв окно просмотра формы.
Необходимо в одной форме связать два набора данных (главный и подчиненный) так, чтобы в подчиненном наборе всегда показывались записи, соответствующие текущей записи в главном наборе. Для этого поступают следующим образом. 1. Создать форму для главной таблицы, как это было описано выше (создание формы для работы с одной таблицей). 2. Поместить на форму компоненты ADOTable вкладка (ADO) и DataSource (вкладка Data Access) для работы с подчиненной таблицей. 3. Для компонента ADOTable в свойстве Connection выставить имя_модуля_данных.ADOConnection1, в свойстве TableName выбрать имя второй подчиненной таблицы, в свойстве Active выставить true. 4. Для компонента DataSource в свойстве установить значение ADOTable1, выбрав его из списка. 5. Выбрать вкладку Data Controls. Щелкнуть по кнопке DBGrid и в форме. Данный компонент служит для отображения записей набора данных в табличной форме. Можно изменить размер формы, растащив границы. Для данного компонента в свойстве DataSource устанавливают значение DataSource2 (это имя присвоено по умолчанию), выбрав его из списка. 6. Выделить компонент ADOTable1, в свойстве Active установить значение False. В свойстве MasterSource выбрать единственное имеющееся в нем значение DataSource1. Затем щелкнуть по правой части строки MasterFields в окне Инспектора Объектов и по появившейся в ней кнопке с тремя точками, чтобы раскрыть окно редактора связей. 7. В списке Available Indexes выбрать имя поля, по которому таблицы связаны между собой. В окне Detail Fields появится выбранное имя поля для связи с главной таблицей. Выбрать в окне Master Fields поле для связи в главной таблице, щелкнуть по кнопке Add. Щелкнуть по кнопке ОК (рис. 2.2).
Рис. 2.2. Связывание двух таблиц при создании составной формы
8. Закрыть окно редактора связей. Для компонента ADOTable1 в свойстве Active установить значение True. 9. Щелкнуть по форме, в окне свойств выбрать вкладку Events, событие OnActivate и создать следующую процедуру
ADOTable1.Active:= true;
10. Сохранить произведенные изменения. 11. Запустить приложение. При перемещении указателя в главной таблице происходит смена информации в отображаемых данных подчиненной таблицы. Осуществить ввод данных в подчиненную таблицу, при этом перед вводом данных в подчиненную таблицу щелкнуть по нужной записи в форме главной таблицы. Пример составной формы в режиме редактирования приведен на рис. 2.3. Рис. 2.3. Составная форма в режиме редактирования
Пример составной формы в режиме ввода данных представлен на рис. 2.4.
Рис. 2.4. Составная форма в режиме ввода данных
Удаление из формы автоинкрементного столбца. Этот столбец необходим для обеспечения уникальности записей и не несет никакой смысловой нагрузки. Его можно убрать из формы. Для этого поступают следующим образом. Выделить компонент DBGrid. Вызвать на нем контекстное меню и выбрать пункт Columns Editor. На экране появится окно редактора столбцов. Для отображения в данном окне списка полей щелкают по кнопке Add All Fields. Выделить в окне нужное поле, вызвать контекстное меню и удалить его. Редактирование и русификация названий столбцов в компоненте DBGrid. Выделить компонент DBGrid. Вызвать на нем контекстное меню и выбрать пункт Columns Editor. На экране появится окно редактора столбцов. Для отображения в данном окне списка полей щелкают по кнопке Add All Fields. Выделить в окне нужное поле. В окне Инспектора Объектов можно изменить следующие свойства. Раскрыть список Title (щелчок по плюсу). 1. В поле Caption задать имя на русском языке. 2. В поле Color выбрать из списка цвет фона. 3. В поле Alignment выбрать способ выравнивания (например, taCenter – по центру). Раскрыть список Font (щелчок по плюсу). 1. В поле Size выбрать размер шрифта. 2. В поле Color выбрать цвет символов. Создание надписи. Перейти во вкладку Standard. Щелкнуть по кнопке Label и в форме, где будет надпись. В окне Инспектора Объектов задают: в строке Caption русское название надписи; в строке Aligment способ выравнивания (например, taCenter – по центру); в строке Color цвет фона; в раскрывающемся списке Font и в поле Color выбирают цвет символов, в поле Size вводят размер; в списке Style для нужного начертания устанавливают значение True; в строке Transparent устанавливают True для прозрачного фона надписи. Создание панели кнопок навигации. Перейти во вкладку DataControls, щелкнуть по кнопке DBNavigator и в форме там, где будет панель с кнопками (например, под формой для каждой таблицы). Выделить компонент и в окне Инспектора Объектов в поле DataSourse выбрать значение DataSource1 (рис. 2.5).
Рис. 2.5. Кнопки панели навигации Первая кнопка (First) устанавливает курсор на первую запись. Вторая кнопка (Prior) устанавливает курсор на предыдущую запись. Третья кнопка (Next) устанавливает курсор на следующую запись. Четвертая кнопка (Last) устанавливает курсор на последнюю запись. Пятая кнопка (Insert) переводит набор данных в режим вставки новой записи. Шестая кнопка (Delete) удаляет текущую запись. Седьмая кнопка (Edit) переводит набор данных в режим редактирования. Восьмая кнопка (Post) запоминает изменения, сделанные в текущей записи. Девятая кнопка (Cancel) отменяет изменения, сделанные в текущей записи. Десятая кнопка (Refresh) обновляет набор данных.
Создание кнопки выхода из формы. Перейти во вкладку Standard. Щелкнуть по кнопке Button и в форме, где будет кнопка выхода. В окне Инспектора объектов в поле Caption набрать слово Выход. Перейти во вкладку Events. Дважды щелкнуть по строке onClick, при этом происходит переход в процедуру обработки событий, где необходимо набрать оператор: Form1.Close; Номер или имя формы могут быть другими. Проверить работу формы (F9). Осуществить возврат в редактор (Ctrl+F2). Создание в форме поля с фиксированным списком. Создание поля с фиксированным списком осуществляется следующим образом: на компоненте DBGrid вызвать контекстное меню и выбрать пункт Columns Editor…; выделить в окне имя поля; для данного поля в окне свойств в списке PickList щелкнуть по кнопке …; в окне String List Editor набрать список, например, ФАЭМ РТФ ЕГФ после набора списка щелкнуть по кнопке ОК. Создание в форме поля с раскрывающимся списком, который выбирается из другой таблицы. Создание поля со списком осуществляется следующим образом: щелкнуть по форме, в окне свойств выбрать вкладку Events, событие OnActivate; для выбранного события создать процедуру (обозначения: ADOTable1 – таблица, содержащая поле, из которого формируется список, предполагается, что таблица находится на модуле данных; DBGrid1.Columns.Items[0] – столбец с номером 0, для которого создают список; PickList – список значений)
имя_модуля_данных.ADOTable1.First; (*установка указателя на первую запись таблицы*) while not имя_модуля_данных.ADOTable1.Eof do (*цикл – пока не конец таблицы*) begin (*формирование списка значений из поля Nomer_bil*) DBGrid1.Columns.Items[0].PickList.add (имя_модуля_данных.ADOTable1.fieldByName('Nomer_bil').Value); имя_модуля_данных.ADOTable1.Next; (* переход на следующую строку таблицы *) end; (* конец цикла *) Пример формы для работы с одной таблицей в режиме ввода данных представлен на рис. 2.6. Пример составной формы представлен на рис. 2.7.
Рис. 2.6. Форма для работы с одной таблицей
Рис. 2.7. Окно составной формы
Дата добавления: 2015-05-09; Просмотров: 581; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |