Уроки Iczelion'а



         

Урок 27. Тултип-контрол - часть 5


раз, когда отображается окно тултипа.

  • Если вы укажете в этом поле ID строкового ресурса, тултип,

    когда ему потребуется отобразить текст в своем окне, будет

    искать строку в таблице строк процесса, заданного параметром

    hInst. Тултип-контрол идентифицирует ID ресурса следующим

    образом: так как ID ресурса - это 16-битное значение, верхнее

    слово этого поля всегда будет pавно нулю. Этот метод полезен,

    если вы хотите портировать вашу программу на другие языки. Так

    как строковый ресурс определен в файле определения ресурсов,

    вам не нужно модифицировать исходный код. Вам только нужно

    изменить таблицу строк и текст тултипа изменится без риска

    внесения ошибок в программу.

  • Если значение в этом поле не pавно

    LрSTR_TEXTCALLBACK и верхнее

    слово не равно нулю, тултип-контрол интерпретирует значение как

    указатель на текстовую строку, которая будет использована в

    качестве текста тултипа. Этот метод самый простой, но наименее

    гибкий.

    резюме: вы должны заполнить структуру TOOLINFO и передать ее тултипу. Эта

    структура задаст характеристики tool'а.

    регистрация tool'а

    После того, как вы заполнили структуру TOOLINFO, вы должны передать ее

    тултипу. Тултип может обслуживать много tool'ов, поэтому обычно одно тултипа

    хватает на все окно. Чтобы зарегистрировать tool, вы посылаете тултипу

    сообщение TTM_ADDTOOL. wрaram не используется, а lрaram должен содержать

    адрес структуры TOOLINFO.

    .data?

    ti TOOLINFO <>

    .......

    .code

    .......

    .......

    invoke SendMessage, hwndTooltip, TTM_ADDTOOL, NULL, addr ti

    SendMessage возвратит TRUE, если tool был успешно зарегистрирован тултипом

    или FALSE в обратном случае. Вы можете удалить tool сообщением TTM_DELTOOL.

    Передача сообщений от мыши тултипу

    Когда вышеописанные шаги выполнены, тултип имеет всю необходимую информацию

    о том, в какой области он должен отслеживать сообщения мыши и какой текст он

    должен отображать. Единственное, что отстутсвует - это триггер. Подумайте:

    область, указанная в качестве tool'а находитится на клиенсткой части другого




    Содержание  Назад  Вперед