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

Описания RDS

Приложения

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

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

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

А.5.31.14. Команда RDS_PAN_VISIBLE – видимость панели

# Приложения

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

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

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

##### А.5.31.14. Команда RDS_PAN_VISIBLE – видимость панели

Команда RDS_PAN_VISIBLE позволяет показывать и скрывать панель, а также узнавать, скрыта ли она в данный момент.

Вызов команды для установки

      int iShow= … // 1 – показать, 0 - скрыть
      rdsSetObjectInt(Panel,RDS_PAN_VISIBLE,0,iShow);

Вызов команды для чтения

      int iShow=rdsGetObjectInt(Panel,RDS_PAN_VISIBLE,0);

Параметры и результат

Panel(RDS_HOBJECT)
  Идентификатор вспомогательного объекта-панели, ранее созданного функцией rdsPANCreate.
iShow(int)
  Состояние панели: 1 – панель показывается, 0 – панель скрыта.

Примечания

Эта команда не всегда управляет непосредственной видимостью панели. Если окно подсистемы с блоком-владельцем панели открыто, этой командой можно показывать и скрывать панель и узнавать, видима ли она для пользователя в данный момент. Однако, если окно подсистемы закрыто, эта команда переключает и возвращает желаемое состояние панели, то есть состояние, в которое панель перейдет при открытии окна. Если, например, включить видимость панели в закрытом окне, а потом открыть окно, панель автоматически покажется внутри окна, при этом даже при закрытом окне, когда пользователь не видит панели, команда RDS_PAN_VISIBLE будет возвращать для данной панели единицу.

Если вызывающей программе нужно узнать, открыта ли в действительности данная панель, следует вызвать функцию rdsPANGetDescr для заполнения структуры описания панели RDS_PANDESCRIPTION и сравнить дескриптор окна панели (поле Handle) с NULL: если дескриптор не нулевой, значит, для панели создан оконный объект, то есть панель физически существует в открытом окне подсистемы.

Пример

Пример использования команды RDS_PAN_VISIBLE приведен в §2.10.4 руководства программиста.

См. также

rdsPANCreate, rdsSetObjectInt, rdsGetObjectInt, rdsPANGetDescr.