Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пр№7(Связь Access c Delphi).doc
Скачиваний:
4
Добавлен:
25.11.2019
Размер:
224.77 Кб
Скачать

If DataModule1.BookTable.Modified then

DataModule1.BookTable.Post;

Close;

end;

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

запись» напишіть наступне:

DataModule1.BookTable.Insert;

EditRecordForm.ShowModal;

По натисканню пункта меню «Редактировать запись» напишіть просто код відображення вікна редагування - EditRecordForm.ShowModal;.

  1. зробіть обробник для меню «Удалить запись». По цій події треба вивести

запит на підтвердження знищення та якщо відповідь є «Так», то можна знищувати.

Створіть такий обробник та напишіть в ньому наступне:

begin

If Application.MessageBox(pChar('Ты действительно хочешь удалить '

+DataModule1.BookTableDSDesigner.AsString), 'Внимание!!!',

MB_OKCANCEL)=id_OK then

DataModule1.BookTable.Delete;

end;

  1. Єдиний недолік в створенному прикладі – в сітці перегляду даних замість

назви міста відображається індекс рядка в довіднику. Це дуже незручно, тому треба виправити цей недолік.

Перейдіть в модуль «DataModule1», та виділіть компонент «BookTable». Зробіть його неактивним – в властивості Active встановіть false. Зараз двічі натисніть по цьому компоненту після чого відчинеться редактор полів. Створіть нове поле, яке буде містити текстову назву міста для рядків таблиці. Для цього натисніть всередині вікна редактору та в меню, яке з’явиться, оберіть пункт «New Field». Відчинеться вікно, яке зображене на рис. 5:

Рис. 5 Вікно створення нового поля

Створення нового поля можливе лише при неактивній таблиці, тому виставляється в властивості Active значення false.

Заповніть поля цього вікна наступним чином:

В полі Name введіть «Town»

В полі Type вкажіть тип String – рядок.

В полі FieldType оберіть Lookup – пошукове поле.

В полі KeyField (ключеве поле) оберіть поле «Город». Це поле головної таблиці,

по значенню якого треба буде відшукувати текст в іншій таблиці.

В полі DataSet треба вказати TownTable – це таблиця-довідник міст, де треба шукати.

В полі Lookup Keys вкажіть Key1 – це поле в таблиці довіднику, за яким треба здійснювати пошук.

В полі Result Field вкажіть поле «Название города» - це поле, текст якого буде підставлятися. Зараз нажміть ОК.

В вікні редактору полів з’явиться ново поле з іменем Town. В самій БД такого поля не буде, тому що воно динамічне та існує лише в пам’яті машини, коли програма є запущеною. Перетащіть його мишкою вище, ближче до поля Город.

Зробіть таблицю BookTable активною та спробуйте запустити програму. Подивитесь на поле Town, зараз там текстова назва міста (рис. 6):

Рис. 6 Результат роботи програми

Зробіть поле «Город» невидимим, для того щоб не бачити незрозумілі числа, а над полем Town напишіть надпис «Город». Для цього двічі натисніть по компоненту BookTable, виділіть поле «Город» та встановіть в властивості «Visible» значенне «false». Тепер виділіть поле «Town» та в властивості «DisplayLabel» напишіть «Город».

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