Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi probleme mit canvas.copyrect (https://www.delphipraxis.net/111513-probleme-mit-canvas-copyrect.html)

Spiderpig_GER_15 4. Apr 2008 16:51


probleme mit canvas.copyrect
 
Hallo,

ich habe folgendes Problem:
Ich möchte ein Farbiges rechteck (rot) mit canvas.copyrect kopieren, welches an eine schwarze linie angrenzt.
Das Problem dabei, entweder ich kopiere das rechteck mit der schwarzen linie, oder ich kopiere es nicht komplett, die folge: entweder ein riesen chaos mit dem schwarzen strich der linie, oder das phänomen, das das rote rechteck sich einfach nur verlängert.


Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
i:integer;
quelle,ziel:trect;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
canvas.MoveTo(100,100);
canvas.lineto(100,500);
canvas.brush.color:=clred;
canvas.Pen.color:=clred;
canvas.Rectangle(101,150,200,200);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
i:=0;
repeat
quelle:=rect(101,150,200,200);
inc(i);
ziel:=rect(101+i,150,200+i,200);
canvas.CopyRect(ziel,canvas,quelle);
sleep(10);
until i = 50;
end;

end.
könnt ihr mir helfen, bzw alternativen erklären?

mfG
Spiderpig

PS: man müsste theoretisch zwischen 2 pixeln die 'linie' ziehen ab der kopiert werden soll oder? (hier zwischen pixel(x) 100 und 101)


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:48 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz