Thema: Delphi Rahmen begrenzen Canvas

Einzelnen Beitrag anzeigen

Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Rahmen begrenzen Canvas

  Alt 23. Apr 2009, 09:04
Danke Blackdrake für deine Mühe, bin nur nicht auf Client gekommen.
Hier der funktionierende Quelltext, wurde ja auch schon öfters nach gefragt vieleicht kann ihn ja jemand gebrauchen.

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  Image1.Canvas.Pen.Mode:= pmNotXOR;
  Image1.Canvas.Pen.Style:= psDot;
end;

procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image1.Canvas.Brush.Style:= bsClear;
  Image1.Canvas.Rectangle(x1,y1,x2,y2); //Vorheriges löschen
  if Shift = [ssLeft] then
  begin
    x1:= X;
    y1:= Y;
    x2:= X;
    y2:= Y;
  end;
end;

procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  if Shift = [ssLeft] then
  begin
  if (X > x1) and (Y > y1) then
    begin
      Image1.Canvas.Rectangle(x1,y1,x2,y2);
      x2 := X;
      y2 := Y;
      if X > Image1.ClientWidth then x2:= Image1.ClientWidth;
      if Y > Image1.ClientHeight then y2:= Image1.ClientHeight;
      Image1.Canvas.Rectangle(x1,y1,x2,y2);
    end;
  end;
end;
Blackheart
  Mit Zitat antworten Zitat