Навигация:
<< >> Оглавление Указатель

Приложения

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

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

А.5.18. Системное меню и контекстное меню блока

А.5.18.6. rdsRegisterContextMenuItem – создать постоянный пункт контекстного меню блока

Функция rdsRegisterContextMenuItem добавляет в контекстное меню блока, из модели которого она вызвана, постоянный пункт с указанным текстом. Это устаревшая сервисная функция, сейчас вместо нее обычно используется функция rdsRegisterContextMenuItemEx, обладающая большими возможностями.

    rdsRegisterContextMenuItemA(
     Caption,  // Текст пункта меню (UTF8)
    int MenuFunc,     // Номер функции пункта меню
    int MenuData      // Данные пункта меню
  );
    rdsRegisterContextMenuItemW(
     Caption, // Текст пункта меню (UTF16)
    int MenuFunc,     // Номер функции пункта меню
    int MenuData      // Данные пункта меню
  );
  // 
    rdsRegisterContextMenuItem(
     Caption, // Текст пункта меню (кодировка по умолчанию)
    int MenuFunc,     // Номер функции пункта меню
    int MenuData      // Данные пункта меню
  );

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

RDS_MhSII (для UTF8) или RDS_MhWsII (для UTF16)

Параметры

Caption (RDSCSTR, RDSWCSTR, RDSXCSTR)
Указатель на строку с текстом пункта меню – этот текст пользователь увидит в самом меню.
MenuFunc (int)
Номер функции пункта меню – при выборе пункта пользователем RDS копирует это число в поле Function структуры RDS_MENUFUNCDATA без какой-либо обработки.
MenuData (int)
Данные пункта меню – при выборе пункта пользователем RDS копирует это число в поле MenuData структуры RDS_MENUFUNCDATA без какой-либо обработки.

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

Идентификатор созданного пункта меню или NULL при возникновении какой-либо ошибки.

Примечания

Эта функция создает новый пункт в контекстном меню блока и возвращает его идентификатор, который можно использовать в других сервисных функциях, работающих с меню. Созданный пункт будет находиться в меню до тех пор, пока он не будет удален функцией rdsUnregisterMenuItem, или до тех пор, пока от создавшего его блока не будет отключена модель.

Добавленный пункт будет иметь текст Caption, с пунктом будет связана пара целых чисел (MenuFunc,MenuData). При выборе этого пункта пользователем модель блока будет вызвана для реакции на событие RDS_BFM_MENUFUNCTION, и в ее параметре ExtParam будет передан указатель на структуру RDS_MENUFUNCDATA, в полях которой будут записаны числа, связанные с выбранным пунктом меню.

Пример

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

См. также

RDS_BFM_MENUFUNCTION, RDS_MENUFUNCDATA, rdsRegisterContextMenuItemEx, rdsAdditionalContextMenuItemEx, rdsUnregisterMenuItem.


<< >> Оглавление Указатель