Электронный учебник:


Курс лекций:


Дополнительно:

Практикум:



Наши хостеры:

Окно подсказки ToolTip

46

WM_MBUTTONUP на обработку органу управления ToolTip. Для этого служит сообщение TTM_RELAYEVENT.

Если в качестве отображаемой строки в структуре TOOLINFOуказано LPSTR_TEXTCALLBACK, родительское окно будет получать сообщение WM_NOTIFYс кодом извещения TTN_NEEDTEXT. Параметр lParam этого сообщения будет содержать указатель на структуру типа TOOLTIPTEXT:

    typedef struct { 

    NMHDR     hdr; // стандартная структура типа NMHDR (см. выше)

    LPTSTR    lpszText;// указатель на отображаемую строку (или идентификатор ресурса-строки)

    char      szText[80]; // буфер для строки (можно использовать как альтернативу lpszText)

    HINSTANCE hinst; // идентификатор приложения

    UINT      uFlags; // флаги (аналогично uFlagsструктуры TOOLINFO)

    } TOOLTIPTEXT

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

            Если панель инструментов ToolBar создается со стилем TBSTYLE_TOOLTIP, то для нее автоматически создается орган управления ToolTip, отображающий окно подсказки для каждой кнопки. При этом все операции по управлению ToolTip берет на себя панель инструментов. Функция окна, имеющего ToolBar, должна лишь обрабатывать сообщение WM_NOTIFYс кодом извещения TTN_NEEDTEXT как описано выше.

предыдущаяследующая