dann verwendest du die im OnMouseMove ermittelten Koordinaten trotzdem und deklarierst diese als private Variablen des Forms. Beim OnClick-Event klannst du dann diese ganz einfach verwenden
Code:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls;
type
TForm1 = class(TForm)
PaintBox1: TPaintBox;
procedure PaintBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure PaintBox1Click(Sender: TObject);
private
{ Private-Deklarationen }
xPos,
yPos: Integer;
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.PaintBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
xPos := X;
yPos := Y;
end;
procedure TForm1.PaintBox1Click(Sender: TObject);
begin
Caption := IntToStr(xPos) + ' *** ' + IntToStr(yPos);
end;
end.
wobei du aber auch eine Variable vom Typ TPoint verwenden kannst:
deklaration: anstatt xPos,yPos: Integer --> pt: TPoint;
und anstatt Caption := IntToStr(xPos) + ' *** ' + IntToStr(yPos);
--> Caption := IntToStr(pt.X) + ' *** ' + IntToStr(pt.Y);