Fórum Posicao de Mouse #370390

12/05/2009

0

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

Responder

Posts

12/05/2009

Woinch

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.


Responder

Gostei + 0

12/05/2009

Desander

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]


Responder

Gostei + 0

12/05/2009

Bertu

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;



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar