Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД_Delphi_Теория_Контр_работа.doc
Скачиваний:
34
Добавлен:
31.05.2015
Размер:
3.15 Mб
Скачать

2.5. Ввод данных через отдельные компоненты

Ввод данных в отдельные компоненты и запись в таблицу базы данных осуществляют следующим образом.

Первоначально необходимо подготовить форму для ввода данных. Возможный вид формы представлен на рис. 2.8.

Рис. 2.8. Форма для ввода данных через компоненты

Область для ввода данных располагается на компоненте Panel, свойство Caption очищено.

Поля ввода сопровождают надписи. Надписи созданы с помощью компонента Label, в свойство Caption введена русская надпись.

Поля для ввода созданы с помощью следующих компонентов:

текстовые поля - компонент Edit, свойство text очищают;

поле с раскрывающимся списком – компонент ComboBox, в свойстве Items вводят список значений, свойство text очищают;

поле для ввода даты DateTimePicker.

На кнопке Добавить (компонент Button) помещена процедура добавления введенных данных в таблицу базы данных (данные отражаются в компоненте DBGrid).

Имя_модуля_данных.ADOTable1.Append;

Имя_модуля_данных.ADOTable1 ['Sh_gr']:=Edit1.text;

Имя_модуля_данных.ADOTable1 ['Facul']:=ComboBox1.Text;

Имя_модуля_данных.ADOTable1 ['Spec']:=ComboBox2.Text;

Имя_модуля_данных.ADOTable1['Kurs']:= StrToInt(ComboBox1.Items[ComboBox1.ItemIndex]);

Имя_модуля_данных.ADOTable1 ['Star']:=Edit2.text;

Имя_модуля_данных.ADOTable1['Dat_zach']:=DateTimePicker1.Date;

Имя_модуля_данных.ADOTable1.Post;

На кнопке Очистить помещена процедура очистки полей ввода.

Edit1.text:='';

ComboBox1.Text:='';

ComboBox2.Text:='';

ComboBox3.Text:='';

Edit2.text:='';

Второй пример ввода данных в таблицу базы данных реализован следующим образом.

Первоначально создают форму для ввода данных. Возможный вид формы представлен на рис. 2.9.

Область для ввода данных располагается на компоненте Panel, свойство Caption очищено.

Поля ввода сопровождают надписи. Надписи созданы с помощью компонента Label, в свойство Caption введена русская надпись.

Рис. 2.9. Форма для ввода данных

Поля для ввода созданы с помощью следующих компонентов:

простые поля для ввода - с помощью компонента Edit;

группа зависимых переключателей – с помощью компонента RadioGroup (в свойстве Caption вносится надпись на русском языке; например, «Бюджет / Договор»), на компоненте RadioGroup помещают компоненты RadioButton (для них в свойстве Caption ставят надписи на русском языке);

независимый переключатель - с помощью компонента CheckBox (в свойстве Caption указывается надпись на русском языке, например, «Военнообязанный»);

поле с раскрывающимся списком - с помощью компонента ComboBox.

Раскрывающийся список выбирают из другой таблицы (в данном примере поле «Шифр группы» выбирают из таблицы «Группы»). Для формирования списка создают специальную процедуру.

Для формы в целом в событии OnActivate записывают следующую процедуру:

Имя_модуля_данных.ADOTable2.First;

While not Имя_модуля_данных.ADOTable2.Eof do

begin

ComboBox1.Items.Add(Имя_модуля_данных.ADOTable2.fieldByName('Sh_gr').Value);

Имя_модуля_данных.ADOTable2.Next;

end;

Данная процедура выбирает значения из поля Sh_gr таблицы ADOTable2, которая находится на модуле данных, и помещает их в значения (Items) в компонент ComboBox1.

На кнопке Добавить помещена процедура ввода данных в поля таблицы базы данных.

Имя_модуля_данных.ADOTable1.Append;

Имя_модуля_данных.ADOTable1 ['Nom_z']:=Edit1.text;

Имя_модуля_данных.ADOTable1 ['Fam']:=Edit2.text;

Имя_модуля_данных.ADOTable1 ['Im']:=Edit3.text;

Имя_модуля_данных.ADOTable1 ['Otch']:=Edit4.text;

Имя_модуля_данных.ADOTable1 ['Sh_gr']:=ComboBox1.Text;

if RadioButton1.Checked then Имя_модуля_данных.ADOTable1 ['B_D']:='Бюджет' ;

if RadioButton2.Checked then Имя_модуля_данных.ADOTable1 ['B_D']:='Договор';

if CheckBox1.Checked then Имя_модуля_данных.ADOTable1 ['V_sl']:='Да'

else Имя_модуля_данных.ADOTable1 ['V_sl']:='Нет';

Имя_модуля_данных.ADOTable1.Post;

На кнопке Очистить помещают процедуру очистки полей ввода.

Edit1.text:='';

Edit2.text:='';

Edit3.text:='';

Edit4.text:='';

ComboBox1.Text:='';

RadioButton1.Checked:= false;

RadioButton2.Checked:= false;

CheckBox1.Checked:=false;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]