[JFWRus] Re[6]: О джозабильности The Bat
Здравствуйте,
[... уточняющее разъяснение поскипано...]
Спасибо, я уже понял эту мысль. Необычно, хотя я кажется понял зачем они это
делают. Похоже, что обработка событий от само рисуемого списка по сообщению
WM_MEASUREITEM у них перенесена внутрь колл бэк функции списка, а поскольку у
структуры, которая передаётся внутрь данного сообщения нет поля дескриптора окна,
то не остаётся другого пути это сообщение перенаправить от родительского окна
обратно как только произвести данную замену индентификатора. Если бы только данное
решение не создавало таких проблем, было бы вообще отлично.
> Когда вы рекомендуете в поисках нужного контрола использовать функции языка
сценариев
> Jaws GetNextWindow/GetPriorWindow, то для
> TheBat! это может быть неэффективно, потому что, кроме имени класса (который
> тоже не уникален), у вас нет константного признака
> для интересующего контрола.
Константный признак есть - местоположение данного окна в цепочке окон, являющимися
дочерними у соответствующего родительского окна. Просто необходимо вызвать определённое
количество раз функцию NextWindow после вызова функции GetFirstChild. Ведь местоположение
в цепочке окон не меняется, у бата, я надеюсь... Конечно теоретически возможна
смена местоположения в цепочке, но уж это я думаю они вряд ли делают, слишком
много проблем возникает при таком подходе, проще не показывать конкретные окна
или элементы управления, чем их удалять из цепочки.
Во всяком случае вызов NextWindow происходит явно быстрее, чем поиск графики,
а главное намного универсальнее, даже при вызове этой функции несколько раз,
поскольку нет побитного сравнения или расчёта хэш-таблицы изображения, уж не
знаю как именно они подошли в челюстях к этому вопросу. Поиск графики с моей
точки зрения можно использовать только в самых крайних случаях, когда не остаётся
других путей решения проблемы, да и то желательно прочитать название графической
метки из файла jgf на случай того, если человек задумает поменять графическую
метку, благо эти файлы являют собой инишки.
До свидания.
***
Это сообщение No4123
было разослано для 318 участников дискуссионного листа
[JFWRus] Re[6]: О джозабильности The Bat