Текущий раздел:

Описания RDS

Приложения

Приложение А. Функции, константы и структуры RDS

А.5. Сервисные функции и макросы RDS

А.5.28. Вспомогательный объект для работы с модальными окнами

А.5.28.6. rdsFORMShowModalEx – открыть окно с функцией обратного вызова

# Приложения

## Приложение А. Функции, константы и структуры RDS

### А.5. Сервисные функции и макросы RDS

#### А.5.28. Вспомогательный объект для работы с модальными окнами

##### А.5.28.6. rdsFORMShowModalEx – открыть окно с функцией обратного вызова

Функция rdsFORMShowModalEx открывает модальное окно, описанное указанным вспомогательным объектом, и не возвращает управления вызвавшей программе до закрытия окна. При изменении пользователем значения любого поля вызывается указанная в параметрах функция.

      BOOL RDSCALL rdsFORMShowModalEx(
        RDS_HOBJECT Win,     // Объект
        RDS_VHo CheckFunc    // Функция реакции на изменения
      );

Тип указателя на эту функцию

RDS_BHoCb3

Параметры

Win(RDS_HOBJECT)
  Идентификатор вспомогательного объекта для работы с модальным окном, ранее созданного функцией rdsFORMCreate.
CheckFunc(указатель на функцию: RDS_VHo)
  Указатель на функцию, которую нужно вызывать при любом изменении полей ввода, или NULL, если такая функция не нужна. Функция должна иметь следующий вид:

        void RDSCALL имя_функции(RDS_HOBJECT win);

  В параметре win этой функции передается идентификатор вспомогательного объекта, поле ввода в окне которого изменилось.

Возвращаемое значение

TRUE – пользователь закрыл окно кнопкой «OK», FALSE – кнопкой «Отмена».

Примечания

Эта функция открывает окно, описанное объектом Win, и ждет, пока пользователь не закроет его. Пользователь может изменить любые поля, ввод в которые не запрещен. Если в параметре CheckFunc передан указатель на функцию обратного вызова, при изменении любого поля эта функция будет автоматически вызываться. В функцию обратного вызова передается идентификатор объекта-окна, и в ней можно, например, управлять разрешенностью каких-либо полей ввода в зависимости от значений, введенных в другие. Внутри функции обратного вызова нельзя определить, какое именно поле ввода изменилось – если эта информация требуется для организации желаемого пользовательского интерфейса, вместо функции rdsFORMShowModalEx следует использовать rdsFORMShowModalServ, поскольку ее функция обратного вызова обладает расширенными возможностями.

Пример

Пример использования функции rdsFORMShowModalEx приведен в §2.7.2 руководства программиста.

См. также

rdsFORMCreate, rdsFORMAddEdit, rdsFORMAddTab, rdsFORMShowModalServ, RDS_FORM_SHOWMODAL.