double arrow

Создание кнопок «ОК» и «Отмена»

Чтобы можно было корректно сохранить изменения данных либо не сохранять их, в форме нужно предусмотреть две кнопки «ОК» и «Отмена». По кнопке «ОК» будет осуществляться вызов процедуры, которая запишет все изменения в БД и закроет форму. По кнопке «Отмена» будет произведен выход из формы без сохранения обновлений.

Для начала требуется создать процедуру, которая будет сохранять данные формы. Для этого в окне Object Navigator нужно выбрать узел Программы и в меню выбрать Edit->Create. Теперь в окне «Нов. Программа» введем имя новой процедуры: «SAVE_FORM» (рис. 96).

 

 

Рисунок 96 - Создание процедуры «SAVE_FORM»

 

Код процедуры сохранения будет таким:

 

PROCEDURE SAVE_FORM IS BEGIN Post; -- отправка данных в БД Commit_Form; -- фиксация изменений END;

 

Следующим шагом необходимо создать служебный блок данных, в котором будут располагаться кнопки «ОК» и «Отмена». Блок необходимо создать с выбором опции «Build a new data block manually» (рис. 97).

 

Рисунок 97 - Создание блока данных вручную

 

Новому блоку данных присвоим имя «TAIL» и в Палитре его свойств установим свойство «Database Data Block» в значение «NO», отметив тем самым, что данный блок не связан с БД. Для установки кнопок сделать активным объект «CANVAS4» блока «DOVER». Кнопки будут расположены на объекте «CANVAS4» внизу под блоком закладок. Теперь необходимо в окне «Layout Editor» на панели инструментов выбрать инструмент Button (кнопка) и разместить на форме 2 кнопки. Новые кнопки будут помещены, скорее всего, в блок данных «DOVER», поэтому в окне Object Navigator их нужно перетащить мышью в блок «TAIL» (рис. 98).

 

 

Рисунок 98 - Создание кнопок в блоке данных «TAIL»

 

В Палитре свойств (Property Palette) первой кнопки установим следующие свойства:

– Name: OK_BUTTON

– Label: OK

Для второй кнопки:

– Name: CANCEL_BUTTON

– Label: Отмена

Чтобы по нажатию кнопок выполнялись нужные действия, следует для каждой из кнопок создать триггер «WHEN-BUTTTON-PRESSED», который вызывается при нажатии кнопки.

Для кнопки «ОК» код триггера будет следующим:

 

Save_Form; Exit_Form(NO_VALIDATE); -- выход из формы

 

Для кнопки «Отмена»:

 

Exit_Form(NO_VALIDATE);

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



Сейчас читают про: