Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 05.05.2011, 19:10
ИльяК ИльяК вне форума
Прохожий
 
Регистрация: 04.05.2011
Адрес: Краснодар
Сообщения: 11
Репутация: 10
По умолчанию Вопрос по GetSubChild ам

Привет всем, прошу помощи, не могу разобраться с командой GetSubChild.
Пишу прогу для автоматизации игрового процесса в одной онлайн флеш-игрушке. Запускается она через браузер, но не получается отправить клик мыши через postmessage в веббраузер.

За основу взял код из этой темы, там теже самые задачи решал человек:

Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
procedure TfrmMain.ClickToPage(const left: integer; const top: integer);
var
  Pt: TPoint;
  var wnd: HWND;
 
  begin
  Application.ProcessMessages;
  Pt.x := WebBrowser1.Left + left;
  Pt.y := WebBrowser1.Top + top;
  Pt := ClientToScreen(Pt);
//{Преобразуем Pt к "mickeys" (аболютным координатам курсора мышки}
//Pt.x := Round(Pt.x * (65535 / Screen.Width));
// Pt.y := Round(Pt.y * (65535 / Screen.Height));
 
 
  wnd:=frmMain.WebBrowser1.Handle;
  wnd:=frmMain.GetSubChild(wnd);
  wnd:=frmMain.GetSubChild(wnd);
  //ShowMessage(inttostr(wnd)); // выдаст в десятичной то что WinSpy видит в HEX
 
postmessage(wnd,WM_MOVE,0,(Pt.x shl 16)+ Pt.y);
postmessage(wnd,WM_LBUTTONDOWN,0,(Pt.x shl 16)+ Pt.y);
postmessage(wnd,WM_LBUTTONUP,0,(Pt.x shl 16)+ Pt.y);
Application.ProcessMessages;

Код подрезал, у меня он в таком варианте:
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
procedure TForm1.btn5Click(Sender: TObject);
var
  Pt: TPoint;
  var wnd: HWND;
begin
wnd:=form1.wb1.Handle;
wnd:=form1.GetSubChild(wnd); (ругается)
wnd:=form1.GetSubChild(wnd); (ругается)
Pt.x := wb1.Left + 75;
Pt.y := wb1.Top + 442;
  //ShowMessage(inttostr(wnd)); // ?????? ? ?????????? ?? ??? WinSpy ????? ? HEX
 
postmessage(wnd,WM_MOVE,0,(Pt.x shl 16)+ Pt.y);
postmessage(wnd,WM_LBUTTONDOWN,0,(Pt.x shl 16)+ Pt.y);
postmessage(wnd,WM_LBUTTONUP,0,(Pt.x shl 16)+ Pt.y);
end;
Но ругается на гетсабчильды((. Ошибки: Undeclared identifier: 'GetSubChild'..
Подскажите плз, где чего дописать/прописать нужно, чтобы заработали, без них почему-то клик не выполняется( .
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 19:21.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025