Здравствуйте, Александр Граф, Вы писали:
АГ>Здравствуйте, c-smile, Вы писали:
CS>>Ну тогда рассказывай как и когда точно твой <li link> активирует твой код.
CS>>Т.е. какое точно DOM событие вызывает вот это вот:
CS>>CS>>SetWindowLong(winHandle, GWL_STYLE, WS_POPUPWINDOW);
CS>>SetWindowLong(winHandle, GWL_EXSTYLE, WS_EX_TOPMOST);
CS>>ShowWindow(winHandle, SW_SHOWMAXIMIZED);
CS>>
CS>>Какие стили окно имеет до того? Этот winHandle это htmlayout окно или его родитель?
CS>>Если htmlayout то как насчет WS_EX_LAYERED и прочих непотребств.
CS>>Короче: любую деталь полезную следствию.
АГ>winHandle это htmlayout, он присваивается в WM_CREATE уже после того, как вызван HTMLayoutProcND с сообщением WM_CREATE.
АГ>Окно-родитель имеет стиль WS_OVERLAPPEDWINDOW.
Т.е. winHandle есть окно у которого есть WS_CHILD стиль, так?
А что этот твой код:
SetWindowLong(winHandle, GWL_STYLE, WS_POPUPWINDOW);
должен сделать с WS_CHILD?
АГ>Отлавливаю HANDLE_BEHAVIOR_EVENT, передаю параметры события и элемент, над которым производится действие в луа-скрипт(у меня луа-обёртка над HELEMENT).
АГ>Там проверяется событие MENU_ITEM_CLICK, и если оно имело место, срабатывает какой-то код (не обязательно смена стиля окна). Так вот. Если код изменяет стиль окна, или посылает какое-нибудь событие, происходит этот самый AV.
Что точно значит "посылает какое-нибудь событие, происходит этот самый AV"? Что такое "посылать событие" в данном случае?
АГ>Возможно, мне следует попробовать слать сообщения окну-родителю?
То тебе решать. Я лично не знаю как оно у тебя там устроено.