Einzelnen Beitrag anzeigen

Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#1

TRect wird nicht gezeichnet

  Alt 7. Aug 2008, 10:39
Hi,

ich versuche im Moment ein Rechteck namens Rec vom Typ TRect auf ein Image zu bekommen. Mein Ansatz lautet so:

Delphi-Quellcode:
procedure TForm16.FormCreate(Sender: TObject);
begin
  image1.canvas.Pen.mode :=pmNotXor;
  image1.canvas.pen.style:= psDot;
  image1.canvas.pen.color:=clRed;
end;
Delphi-Quellcode:
procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
Image1.canvas.brush.style :=bsClear;
if shift = [ssleft] then
  begin
    x1 := x;
    y1 := y;
      Cut.TopLeft.X := x1;
   Rec.TopLeft.Y := y1;
   Rec.BottomRight.X := x2;
   Rec.BottomRight.Y := y2;
 Image1.Canvas.DrawFocusRect(Rec);
  end;
end;
Delphi-Quellcode:
procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin

 if shift = [ssleft] then begin
 x2 := x;
 y2 := y;
     Rec.TopLeft.X := x1;
   Rec.TopLeft.Y := y1;
   Rec.BottomRight.X := x2;
   Rec.BottomRight.Y := y2;
 Image1.Canvas.DrawFocusRect(Rec);
  end;
end;
Wenn ich das jetzt aber versuche, also Maus drücken und gedrückt bewegen und dann loslassen dann flackert das Image ein bisschen aber ein Rechteck ist nicht zu sehen. Was mache ich denn falsch? Muss ich dem Rec irgendwie eine Farbe zum zeichnen oder so zuweisen, und wenn ja, wie?


MFG Lars Wiltfang
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat