ImageEn for Delphi and C++ Builder ImageEn for Delphi and C++ Builder

 

ImageEn Forum
Profile    Join    Active Topics    Forum FAQ    Search this forumSearch
Forum membership is Free!  Click Join to sign-up
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 ImageEn Library for Delphi, C++ and .Net
 ImageEn and IEvolution Support Forum
 about FindObjectAt
 New Topic  Reply to Topic
Author Previous Topic Topic Next Topic  

wealsh

13 Posts

Posted - Nov 17 2018 :  10:05:33  Show Profile  Reply
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;



w2m

USA
1990 Posts

Posted - Nov 17 2018 :  11:17:46  Show Profile  Reply
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



Bill Miller
Adirondack Software & Graphics
Email: w2m@hughes.net
EBook: http://www.imageen.com/ebook/
Custom Commercial ImageEn Development
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
Jump To: