Note: You must be registered in order to post a reply. To register, click here. Registration is FREE!
T O P I C R E V I E W
wealsh
Posted - Nov 17 2018 : 10:05:33
procedure TMainForm.ImageEnVect1MouseMove(Sender: TObject; Shift: TShiftState;
X, Y: Integer);
var
hobj: integer;
R:TRect;
begin
hobj := ImageEnVect1.FindObjectAt(x, y, Distance);
if hobj<0 then Exit;
if (lasthobj > -1) then begin
ImageEnVect1.ObjPenColor[lasthobj] := clRed;
lasthobj := -1;
end;
if (hobj > -1) then begin
if (lasthobj > -1) then begin
ImageEnVect1.ObjPenColor[lasthobj] := clRed;
end;
ImageEnVect1.ObjPenColor[hobj] := clBlue;
lasthobj := hobj;
end;
end;
1 L A T E S T R E P L I E S (Newest First)
w2m
Posted - Nov 17 2018 : 11:17:46 I see 3 problems in your code:
1. Distance is not defined or set... try Var Distance: integer; then set Distance := 0
2. lastobj is not defined is not set before inspecting it.
Var lastobj: integer; lastobj := hobj; if (lasthobj > -1) then begin