Mouse - simular clique |
Top Previous Next |
// Simular clique do mouse:
"Clicando" um componente sem clicar nele 1 - Insira um ListBox e preencha-o com alguns itens;
2 - Insira um botão qualquer;
3 - No evento OnDblClick do ListBox, digite:
Button1.Perform(WM_LBUTTONDOWN, 0, 0);
------------- OUTRO
SetCursorPos( 10, 10 ); Mouse_Event( MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0); Mouse_Event( MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
------------- OUTRO
procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage('Button 1 clicked'); end;
procedure TForm1.Button2Click(Sender: TObject); var Pt : TPoint; begin Application.ProcessMessages; {Obtém o point no centro do Button1} Pt.x := Button1.Left + (Button1.Width div 2); Pt.y := Button1.Top + (Button1.Height div 2); {Converte Pt para as coordenadas da tela } Pt := ClientToScreen(Pt); Pt.x := Round(Pt.x * (65535 / Screen.Width)); Pt.y := Round(Pt.y * (65535 / Screen.Height)); {Move o mouse} Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_MOVE, Pt.x, Pt.y, 0, 0); {Simula o pressionamento do botão esquerdo do mouse} Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTDOWN, Pt.x, Pt.y, 0, 0); { Simula soltando o botão esquerdo do mouse } Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTUP, Pt.x, Pt.y, 0, 0); end;
|