21.10.2003, 10:11 | #1 |
Участник
|
Проверка при закрытии формы
Вновь к вам за помощью.
Ситуация следующая: Есть форма с кнопками ОК и Отмена. Причем необходимо, чтобы кнопки возвращали различные Action, например LookupOK и LookupCancel. Кроме того при закрытии формы хочется проверять правильность внесенных данных и, в зависимости от результата, закрывать форму или нет. Я использовала триггер формы OnQueryCloseForm() : Boolean, но он работает только если закрывать форму "крестиком". Если же закрытие происходит по кнопкам ОК или Отмена, то в триггер OnQueryCloseForm() мы просто не попадаем. Подскажите как обойти эту ситуацию. Всем заранее спасибо. |
|
21.10.2003, 10:34 | #2 |
Аманд
|
Есть опция настроки подтверждения и удаления записей. Настраивается для каждого пользователя:
Пользователь/Настройки пользователя/Закладка Подтверждение. Это не совсем то, что вы спрашивали, но возможно поможет. |
|
21.10.2003, 10:50 | #3 |
NavAx
|
Рисуете кнопки OK и Cancel.
Далее обрабатываете это дело : IF YourForm.RUNMODAL() = ACTION::LookupOK THEN {обрабатываете нажатие кнопки OK} ELSE IF YourForm.RUNMODAL() = ACTION::LookupCancel THEN {обрабатываете нажатие кнопки Cancel} ELSE {А вот здесь обрабатываете все остальные события; Т.к. кнопки всего две и обе обработаны, то любой другой вариант - это отмена действия пользователем, т.е. здесь Вы как раз можете обработать закрытие формы } Прошу прощения, если неверно понял вопрос. |
|
21.10.2003, 11:14 | #4 |
Участник
|
Vals, спасибо! Подтверждения - штука видимо хорошая, но в данной ситуации не поможет. Зато знать буду, на будущее.
Yoil, ваш механизм понятен. Но у меня проблема в том, что надо обработку сделать до закрытия формы и при определенных ситуациях вообще ее не закрывать. |
|
21.10.2003, 12:34 | #5 |
NavAx
|
Попробуйте повесить на OnPush() кнопок те же самые проверки, что и на OnQueryCloseForm()...
|
|
21.10.2003, 13:01 | #6 |
Участник
|
Пробовала. Во-первых, если у кнопок прописано Action и написан триггер OnPush одновременно, то выдается сообщение типа "...система работает...окно не может быть закрыто". Но это полбеды, т.к. после сообщения она продолжает работать. А вот во-вторых, из OnPush в данном случае незакрыть форму всеравно нельзя - т.е. я просто не знаю как это сделать, как скомандывать НЕЗАКРЫВАТЬ окно.
|
|