Конференция "Сети" » Эмулировать клик мышки в Webbrowser
 
  • Демерго (30.11.10 10:33) [0]
    Здравствуйте!

    Подскажите как эмулировать нажатие мыши по обьекту в Webbrowser.

    Код обьекта в HTML выглядит так:

    <tr><td><form name= "myForm" target="_self" action="/assault/1on1/go/?w=1RU" method="post">
    <input type="hidden"  name="defenderID" value="72268" />
    <button type="submit" name="Go" value="1" style="background-color:transparent; border:0px; width:98px; height:25px; " onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('btn_angreifen2009361','','/public/img/ru/buttons/btn_angreifen_h.jpg',1)"  ><img class="submit_image" name="btn_angreifen2009361" src="/public/img/ru/buttons/btn_angreifen.jpg" alt="Go" /></button>
    </form>
    </td></tr>

    Выглядит как кнопка.

    По сути она отправляет на сервер action="/assault/1on1/go/?w=1RU" method="post"

    Можно как-то провернуть это через Webbrowser1.navigate? (метод Post)

    Хотя предпочтительней все же через click.

    Заранее огромное спасибо!
  • nomes (12.06.11 19:40) [1]
    Что бы реально программно кликнуть где то в webbrowser, или еще чего эмулировать надо сообщения посылать не в хэндл webbrowser а в хэндл IE
    Находим хэндл
    // функция находит реальный IE
    function GetIEHandle(WebBrowser: TWebbrowser; ClassName: string): HWND;
    var
     hwndChild, hwndTmp: HWND;
     oleCtrl: TOleControl;
     szClass: array [0..255] of char;
    begin
     oleCtrl :=WebBrowser;
     hwndTmp := oleCtrl.Handle;
     while (true) do
     begin
      hwndChild := GetWindow(hwndTmp, GW_CHILD);
      GetClassName(hwndChild, szClass, SizeOf(szClass));
      if (string(szClass)=ClassName) then
      begin
      Result :=hwndChild;
      Exit;
      end;
      hwndTmp := hwndChild;
     end;
     Result := 0;
    end;

    ну а затем какое надо сообщение
    var
     H : hwnd;
    begin
    H := GetIEHandle(WB,'Internet Explorer_Server');
    SendMessage(H,WM_MOUSEMOVE,0,MakeLong(x,y);
    end
  • int64 © (12.06.11 21:08) [2]
 
Конференция "Сети" » Эмулировать клик мышки в Webbrowser
Есть новые Нет новых   [134435   +17][b:0][p:0]