Приложения
Приложение А. Функции, константы и структуры RDS
А.4. Структуры RDS
А.4.3. RDS_BLOCKDIMENSIONS – размеры и положение блока или связи
Структура RDS_BLOCKDIMENSIONS используется для получения координат и размеров описывающего прямоугольника блока или связи. Положение и размеры блока можно получить при помощи функций rdsGetBlockDimensions и rdsGetBlockDimensionsEx, описывающий прямоугольник связи – при помощи функции rdsGetConnDimensions. В параметрах этих функций можно указать, нужно ли при вычислении размеров учитывать текущий масштаб подсистемы и значения переменных блока, если они влияют на его размеры и координаты.
typedef struct { DWORD servSize; // Размер этой структуры в байтах RDSINT32 BlockX,BlockY; // Положение точки привязки RDSINT32 Left,Top; // Верхний левый угол прямоугольника блока RDSINT32 Width,Height; // Размеры прямоугольника блока } RDS_BLOCKDIMENSIONS; typedef RDS_BLOCKDIMENSIONS *RDS_PBLOCKDIMENSIONS;
Поля структуры
- servSize (DWORD)
- Размер этой структуры в байтах. Перед вызовом любой сервисной функции, работающей с этой структурой, полю servSize необходимо присвоить значение sizeof(RDS_BLOCKDIMENSIONS).
- BlockX, BlockY (RDSINT32)
- Горизонтальная (BlockX) и вертикальная (BlockY) координаты точки привязки изображения блока на рабочем поле подсистемы. Для блоков, изображаемых векторной картинкой, точкой привязки является начало координат этой картинки, для блоков, изображаемых программно или прямоугольником с текстом – левый верхний угол описывающего прямоугольника блока. Горизонтальная ось координат направлена вправо, вертикальная – вниз, начало координат – левый верхний угол рабочего поля.
- Left, Top (RDSINT32)
- Горизонтальная (Left) и вертикальная (Top) координаты описывающего прямоугольника блока, то есть прямоугольника минимального размера с горизонтальными и вертикальными сторонами, который целиком покрывает изображение блока. Ни одна точка изображения блока не находится левее координаты Left и выше координаты Top.
- Width, Height (RDSINT32)
- Ширина (Width) и высота (Height) описывающего прямоугольника блока. Ни одна точка изображения блока не находится правее координаты (Left+Width) и ниже координаты (Top+Height).
Пример
Примеры использования этой структуры приведены в §2.13.4 и §2.16.2 руководства программиста.
См. также
rdsGetBlockDimensions, rdsGetBlockDimensionsEx, rdsGetConnDimensions.