Abaixo uma function bem simples, que simula o pressionamento do botão esquerdo do mouse em certa posição da tela sem utilizar o mouse, ou seja o mouse fica livre para ser utilizado enquanto a aplicação executa a função.
Procedure SendMouseClick(x,y:Integer);
beginh := FindWindow(nil, 'Janela que vai clicar');SendMessage(h, WM_LBUTTONDOWN, MK_LBUTTON, MAKELPARAM(x,y));SendMessage(h, WM_LBUTTONUP, MK_LBUTTON, MAKELPARAM(x,y));end;
procedure TForm1.Timer1Timer(Sender: TObject);beginSendMouseClick(764,366);end;
Legenda:
Azul: Coordenadas que vai executar o click.
Vermelho: Janela que vai clicar.
boa!
ResponderExcluirEu não consigo fazer funcionar o sendMessage com a coordenada.
ResponderExcluirprocedure TForm2.Button1Click(Sender: TObject);
var
teste: HWND;
begin
teste:= FindWindow('Notepad',nil);
if teste <> 0 then
SendMessage(teste, WM_LBUTTONDOWN, MK_LBUTTON, MAKELPARAM(p.x,p.y));
SendMessage(teste, WM_LBUTTONUP, MK_LBUTTON, MAKELPARAM(p.x,p.y));
end;