Search results for 'DrawMarquee'. 1 post(s) found.

  1. 2007/09/11 Implementing a lasso drawing technique
2007/09/11 07:55

Implementing a lasso drawing technique


Here's one approach to drawing a lasso rectangle using Delphi:

1. In the OnMouseDown event for the form
that you are 'lasso-ing' controls on:

bMarquee := True;
ptOrigin := Point(X,Y) ;
ptMove := Point(X,Y) ;

Pen.Color := clBlack;
Pen.Width := 1;
Pen.Style := psDash;
Brush.Style := bsClear;

DrawMarquee(ptOrigin, ptMove, pmNotXor ) ;


2. In the OnMouseMove event for the form...

if bMarquee = True then begin
  DrawMarquee(ptOrigin, ptMove, pmNotXor) ;
  DrawMarquee(ptOrigin, Point(X,Y), pmNotXor) ;
  ptMove := Point(X, Y) ;
  Canvas.Pen.Mode := pmCopy;
end;


3. In the OnMouseUp event for the form...

if bMarquee = True then begin
  bMarquee := False;
  DrawMarquee(ptOrigin, Point(X,Y), pmNotXor) ;
  ptMove := Point(X,Y) ;
end;


4. The DrawMarquee procedure...

procedure myForm.DrawMarquee
   (mStart, mStop : TPoint; AMode : TPenMode) ;
begin
  Canvas.Pen.Mode := AMode;
  Canvas.Rectangle(mStart.X,mStart.Y,mStop.X,mStop.Y) ;
end;
Trackback 3 Comment 0

Trackback : Cannot send a trackbact to this post.

  1. Subject different money making ideas

    Tracked from moneyideas 2010/01/29 04:55 delete

    moneyideas

  2. Subject different money making ideas

    Tracked from moneyideas 2010/01/29 13:45 delete

    moneyideas

  3. Subject different money making ideas

    Tracked from moneyideas 2010/01/31 16:39 delete

    moneyideas