Здравствуйте.
Необходимо отрисовать в текстуру страничку с HTML и обрабатывать события от мыши. На страничке могут находиться
flash контролы.
Я реализовал скрытое child окно с IWebBrowser, получаю IViewObject рисую в DC, копирую в текстуру, тут все нормально, работает.
Но! есть серьёзная проблема с событиями от мыши в flash контроле.
Они не всегда срабатывают (через раз и хуже), как будто флеш еще где-то сам опрашивает мышь.
Пробывал:
— передавать события через SendMessage,
— через IOleInPlaceObjectWindowless:
void IEWindow::OnMouseEvent(UINT msg, WPARAM wp, LPARAM lp)
{
IDispatch *disp = 0;
_browser->get_Document(&disp);
if (disp)
{
IHTMLDocument2 *html = 0;
disp->QueryInterface(__uuidof(IHTMLDocument2), (void**)&html);
if (html)
{
POINT curpos;
GetCursorPos(&curpos);
ScreenToClient(_parentHWND, &curpos);
IHTMLElement *elem = 0;
html->elementFromPoint(curpos.x, curpos.y, &elem);
if (elem)
{
IOleInPlaceObjectWindowless *wl = 0;
elem->QueryInterface(__uuidof(IOleInPlaceObjectWindowless ), (void**)&wl);
if (wl)
{
LRESULT lr = 0;
wl->OnWindowMessage(msg, wp, lp, &lr);
wl->Release();
}
elem->Release();
}
html->Release();
}
disp->Release();
}
но это не помогает
Я много гуглил и искал тут, данная проблема возникает довольно часто, но я так и не нашел нормального решения.
Прошу Вашей помощи!