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

Описания RDS

Приложения

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

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

А.5.6. Операции с блоками и связями

А.5.6.46. rdsSetBlockFlags – установить флаги параметров блока

# Приложения

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

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

#### А.5.6. Операции с блоками и связями

##### А.5.6.46. rdsSetBlockFlags – установить флаги параметров блока

Функция rdsSetBlockFlags устанавливает битовые флаги, описывающие различные параметры блока.

      void RDSCALL rdsSetBlockFlags(
        RDS_BHANDLE Block,    // Блок
        DWORD Flags,          // Флаги
        DWORD Mask            // Маска установки
      );

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

RDS_VBhDwDw

Параметры

Block(RDS_BHANDLE)
  Идентификатор блока.
Flags(DWORD)
  Набор битовых флагов параметров блока RDS_BDF_*, кроме флагов RDS_BDF_TEXTRECT и RDS_BDF_HASPICTURE.
Mask(DWORD)
  Маска изменяемых битовых флагов (единичные биты в позиции тех флагов, которые нужно изменить в блоке Block согласно Flags).

Примечания

Эта функция позволяет установить различные флаги параметров блока. Она не может использоваться для установки флагов RDS_BDF_TEXTRECT (блок отображается прямоугольником с текстом) и RDS_BDF_HASPICTURE (у блока есть векторная картинка), поскольку эти флаги – информационные, они сигнализируют о настройках, сделанных пользователем, которые не могут быть изменены программно простым включением или выключением какого-либо параметра.

Для того, чтобы изменить флаги блока, нужно в параметре Flags передать целое число, у которого в позициях, соответствующих взводимым флагам, будут единичные биты, а в позициях, соответствующих сбрасываемым – нулевые. При этом в параметре Mask должно быть передано целое число, у которого единичные биты соответствуют изменяемым (взводимым или сбрасываемым) флагам, а нулевые – флагам, остающимся неизменными. Например, для взведения флага RDS_BDF_ALLOWRESIZE в блоке Block нужно вызвать функцию следующим образом:

      rdsSetBlockFlags(Block,RDS_BDF_ALLOWRESIZE,RDS_BDF_ALLOWRESIZE);

Для сброса этого же флага нужно вызвать функцию так:

      rdsSetBlockFlags(Block,0,RDS_BDF_ALLOWRESIZE);

См. также

RDS_BLOCKDESCRIPTION, rdsGetBlockDescription, rdsGetBlockFlags.