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

Описания RDS

Приложения

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

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

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

А.5.6.31. rdsGetMouseObjectId – элемент векторной картинки блока под курсором мыши

# Приложения

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

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

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

##### А.5.6.31. rdsGetMouseObjectId – элемент векторной картинки блока под курсором мыши

Функция rdsGetMouseObjectId возвращает целый идентификатор элемента векторной картинки блока, находящегося под курсором мыши.

      int RDSCALL rdsGetMouseObjectId(
        RDS_PMOUSEDATA pMouseData    // Описание события
      );

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

RDS_IMd

Параметр

pMouseData(RDS_PMOUSEDATA)
  Указатель на структуру RDS_MOUSEDATA, используемую в реакциях блоков на события, связанные с действиями пользователя мышью.

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

Целый идентификатор элемента, находящегося под курсором мыши (координаты курсора считываются из параметра pMouseData) или 0, если под курсором нет элементов картинки.

Примечания

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

Чаще всего rdsGetMouseObjectId вызывают из реакций функции модели на нажатие/отпускание кнопок мыши и перемещение ее курсора, поскольку в этих случаях в модель передается указатель на структуру RDS_MOUSEDATA, который можно без изменения передать в rdsGetMouseObjectId (впрочем, можно самостоятельно описать такую структуру, заполнить ее параметрами и вызывать функцию из других реакций модели блока). Функция возвращает целый идентификатор, присвоенный пользователем одному из элементов картинки в графическом редакторе. По умолчанию всем элементам присваиваются нулевые идентификаторы, с точки зрения rdsGetMouseObjectId попадание курсора в такие элементы не отличается от попадания в свободное место – в обоих случаях функция вернет нулевое значение. Если пользователю нужно сделать какие-то элементы картинки активными и отслеживать попадание в них курсора мыши, ему следует дать им ненулевые идентификаторы.

Пример

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

См. также

RDS_MOUSEDATA, rdsGetPictureObjectId.