Posicao de Mouse

Delphi

12/05/2009

Aee alguem sabe como pegar a posicao do mouse dentro de um objeto Webrowser ? Tipo eu consigo pegar a posicao do mouse na tela, mais se a resolucao do computador for diferente essa posicao muda... Eu queria pegar uma posicao em torno do meu form, pra que funcione em qualquer resolucao ... Alguma ideia ?


Bertu

Bertu

Curtidas 0

Respostas

Woinch

Woinch

12/05/2009

Dê uma pesquisada na função ScreenToClient ela com certeza irá lhe ajudar. ClientToScreen e ClientToParent podem lhe ser uteis também.

Qualquer dúvida favor postar.


GOSTEI 0
Desander

Desander

12/05/2009

Veja se é isso que vc procura:


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Linha: TLabel;
    Coluna: TLabel;
    procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  Linha.Caption:= IntToStr(X);
  Coluna.Caption:= IntToStr(Y);
end;

end.
[/code]


GOSTEI 0
Bertu

Bertu

12/05/2009

consegui ja vlw pela ajuda... segue o codigo se alguem quiser saber
var
 Pt : TPoint;
begin

 Pt.x := WebBrowser1.Left + (110);
 Pt.y := WebBrowser1.Top + (75;

 Pt := ClientToScreen(Pt);
 Pt.x := Round(Pt.x * (65535 / Screen.Width));
 Pt.y := Round(Pt.y * (65535 / Screen.Height));

 Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_MOVE, Pt.x, Pt.y, 0, 0);

 Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTDOWN, Pt.x, Pt.y, 0, 0);
 
 Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTUP, Pt.x, Pt.y, 0, 0);
end;



GOSTEI 0
POSTAR