Sonsuz dongu icinde mouse okumak

Başlatan bunalmis, 29 Mart 2010, 13:22:08

z

Form uzerindeki bir buton tiklandiginda  ilgili click procedurene girip icinde sonsuz dongude kalalim.

Bu esnada mouse hareket ettirildiginde kursor kesintisiz hareket edebilmekte.

Amacim sonsuz dongudeyken mouse pozisyonunu ve buton konumlarini ogrenmek.

Bu islemi application.process messages kullanmadan yapmak istiyorum.

Nasil olabilir?
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

Klein

#1

unit Unit4;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
    pos:TPoint;
begin
    i:=0;
    while i < 1 do
    begin
      GetCursorPos(pos);
      canvas.TextOut(0,0,'X: '+inttostr(pos.x)+' Y: '+inttostr(pos.y));
    end;
end;

end.


Mouse ile ilgili diğer fonksiyonlar için yardımdan "mouse handling utilities" bölümüne bakabilirsiniz.

orhanc

Delphide sonsüz döngü kullanmaya gerek yok

basitce olayları yakalamak yeterli olacaktır

Formun MouseMove Olayını kullanmak yeterli

procedure TForm4.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  label1.Caption := IntToStr(x);
  label2.Caption := IntToStr(y);
end;
i'm doing nothing... Giddy Up  http://www.drorhan.com