If DataModule1.TownTable.Modified then 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

If DataModule1.TownTable.Modified then



DataModule1.TownTable.Post;

end;

Якщо поточний рядок був змінений, то в властивості Modifies буде true, інакше false. А якщо відбулись зміни, то їх треба зберегти, інакше якщо користувач зачинить вікно, то дані можуть не зберегтися. Для збереження змін використовується метод Post.

При натисканні кнопки «Знищити» треба написати наступний код:

procedure TTownTableForm.DelBtnClick(Sender: TObject);

Begin

DataModule1.TownTable.Delete;

end;

27. Прейдіть до головної форми та створіть меню або кнопку для виклику

«Довідника міст» (рисунок 2):

Рисунок 2 - Меню виклику «Довідника міст»

По події OnClick для меню напишіть код виклику вікна «Довідника міст»:

procedure TForm1.TownTableMenuItemClick(Sender: TObject);

Begin

TownTableForm.ShowModal;

end;

Якщо не був доданий модуль «Довідника міст» до головної форми та буде зроблена спроба відкомпілювати проект, то з’явиться наступний запит (рисунок 3):

Рисунок 3 – Вікно з повідомленням у випадку спроба відкомпілювати проект, якщо не був доданий відповідний модуль

Мова йде про те, що форма TownTableForm оголошена в модулі TownTableUnit та твоя форма не має ссилки на нього. Тобі пропонується додавати її автоматично. Оберіть «Yes» та модуль буде доданий автоматично, після цього можна знову компілювати проект, не роблячі жодних змін. Запустіть проект та перевірте роботу програми.

 

28. Запустіть програму, зробіть виклик «Довідник міст» та додайте туди

декілька рядків. Зараз в нас є «Довідник міст» та можна підв’язати його дані до головної таблиці. Але перед цим треба трохи покращити форму. Виділіть сітку DBGrid1 на головній формі та в властивості «Options » відключіть можливість редагування даних в сітці – в dgEditing треба вказати false. Зараз редагування даних в сітці неможливе, тому зробіть для цього окремі вікна.

В головному меню створіть пункт «Редагування» з наступними підпунктами:

1. Додати запис;

2. Редагувати запис;

3. Знищити запис.

Рисунок 4 - Меню «Редагування»

 

29. Створіть нову форму, яка буде використовуватися для редагування даних

кожного запису. Збережіть її під іменем EditFormUnit. Саму ж форму назовіть EditRecordForm. Змініть в формі наступні властивості:

· BorderStyle - bsSingle

· Position – poMainFormCenter.

 

30. підключить до нової форми модуль з даними, тому що необхідно буде

мати до них доступ. Для цього оберіть з меню File пункт Use Unit, в вікні, яке з’явиться, оберіть DataModuleUnit та натисніть ОК. Форма для редагування даних має вигляд (рисунок 5):

Рисунок 5 - Вікно редагування даних

Навпроти надписів «Прізвище», «Ім’я», «Телефон», «Ел_адреса» та «Дата» з находяться компоненти DBEdit з закладки «Data Controls ». Ці компоненти представляють собою прості рядки введення типу TEdit, лише вони вміють автоматично редагувати вказані поля в БД. Щоб компонент бачив дані з необхідного поля треба вказати у нього в властивості «DataSource » необхідну таблицю (DataModule1.DataSource1), а в властивості «DataField » вказати поле, яке треба редагувати.

Для властивості «Мобільний_телефон» краще було б використовувати компонент «DBCheckBox ». У нього також треба вказати поле в таблиці, як й у компонентів «DBEdit».

Саме цікаве – поле «Місто». Назви міст зберігаються в окремому довіднику, а в головній таблиці повинні зберігатися лише числа – номери рядків із довідника міст. Для реалізації зв’язка між двома таблицями треба поставити компонент «DBLookupComboBox» з закладки «Data Controls ». Тепер треба вказати в нього в властивості «DataSource » головну таблицю (DataModule1.DataSource1), яка буде редагуватися, а в властивості «DataField » вказати поле, яке треба редагувати – «Місто».

Компонент «DBLookupComboBox » виглядає як випадаючий список (схожий на TComboBox). В якості елементів випадаючого списка можна вказати таблицю. В властивості «ListSource » треба вказати таблицю, з якої будуть обиратися елементи для випадаючого списка. Вкажіть довідник міст - DataModule1.TownSource.

В властивості «ListField » вкажіть поле з цієї таблиці, яке буде використовуватися для заповнення випадаючого списка – «Назва_міста». В властивості «KeyField» треба вказати поле, значення якого буде заноситися в вказане поле головної таблиці - Key1.

 

По натисканню кнопки «Зберегти» напишіть:

procedure TEditRecordForm.BitBtn1Click(Sender: TObject);

Begin



Поделиться:


Последнее изменение этой страницы: 2016-08-14; просмотров: 117; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.191.46.36 (0.005 с.)