Delphi и WebBrowser

Тема в разделе "Другие языки", создана пользователем dig555, 4 окт 2010.

Статус темы:
Закрыта.
Модераторы: Цукер
  1. dig555

    dig555

    Регистр.:
    22 июн 2007
    Сообщения:
    362
    Симпатии:
    148
    На форме WebBrowser. В WebBrowser'е загружена страничка флеш игры. Как переместить курсор на заданные координаты и нажать на них левую кнопку мыши?

    Вариант вроде
    Mouse_Event(MOUSEEVENTF_LEFTDOWN,x,y,0,0);
    Mouse_Event(MOUSEEVENTF_LEFTUP,x,y,0,0);

    Не катит, так как координаты нужно задать относительно WebBrowser'а или на крайняк относительно окна программы, но не относительно всего экрана.

    Краем уха слышал о SendMessage и PostMessage, но разве что слышал. Пример бы.
     
  2. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    ну так возьми координаты своего окна и координаты клика - и пересчитай в координаты экрана - элементарная операция сложения и вычитания
     
  3. dig555

    dig555

    Регистр.:
    22 июн 2007
    Сообщения:
    362
    Симпатии:
    148
    Сорри - туплю. Ведь моё окно может быть в любом месте экране? Или есть возможность определять его координаты независимо от местоположения?
     
  4. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    GetWindowRect

    Код:
    var
      h: HWND;
      r: TRect;
    begin
      h:=GetForegroundWindow;
      GetWindowRect(h,r);
    
    r.Left, r.Top, r.Right, r.Bottom
    любое активное окно

    Поздозреваю что можно получить и именно свои, но т.к. делфи было давно и неправда -- делюсь тем что нашел гугл ))
     
    dig555 нравится это.
  5. p486

    p486 Постоялец

    Регистр.:
    11 сен 2010
    Сообщения:
    94
    Симпатии:
    0
    я для таких целей пишу на C# он более приспособлен, в нем намного больше возможностей работы с WebBrowser.
     
  6. Paroxizm

    Paroxizm Создатель

    Регистр.:
    30 июл 2009
    Сообщения:
    30
    Симпатии:
    11
    В шарпе веб-браузер такой же тупой, как и в делфи, пусть и немного более управляемый. Всё-таки в основе лежит один и тот же COM-объект.

    По теме: вот Перейти по ссылке вроде как ответ на твой вопрос
     
  7. p486

    p486 Постоялец

    Регистр.:
    11 сен 2010
    Сообщения:
    94
    Симпатии:
    0
    на много более управляемый! мелкософт много функций не документирует, но работать с ними можно. а в делфи доступны только документированные функции.
     
Статус темы:
Закрыта.