![]() |
TCanvas
Wo gibt es eine Einführung zu der Komponente. Ich komm damit nicht zurecht. Ich will nur ein Canvas erstellen, die Größe einstellen, etwas drauf rummalen (das kann ich mittlerweile) und es dann in Image1 anzeigen. Aber irgendwie krieg ich es nicht hin.
|
TCanvas ist keine Komponente. Es ist eine Kapselung der GDI Funktionen von Windows. Wenn du im Hintergrund (also nicht sichtbar) zeichnen und das Ergebnis dann in einer TImage Komponente darstellen willst, solltest du auf die Canvas eins TBitmap zeichnen.
Delphi-Quellcode:
var Bmp: TBitmap;
begin Bmp := TBitmap.Create; try Bmp.Width := 200; Bmp.Height := 200; with Bmp.Canvas do begin Rectangle(10, 10, 190, 190); end; Image1.Picture.Assign(Bmp); // Bild anzeigen finally Bmp.Free; end; end; |
Das wars eigentlich auch schon. Aber warum beschwert Delphi sich nicht, wenn man eine Variable als TCanvas deklariert, und ihr dann TCanvas.Create(self) zuweist?
|
Moin Nailor,
warum sollte sich Delphi beschweren, wenn einer Variablen vom Typ TCanvas ein Objekt von Typ TCanvas zugewiesen wird? Dann dürfte auch die Zuweisung eines integer Wertes an eine als integer deklarierte Variable nicht funktionieren. Oder hab' ich da jetzt etwas falsch verstanden? |
Zitat:
|
Zitat:
Zitat:
|
Eine Canvas ist nicht die Zeichenfläche selbst. Sie liefert nur die Funktionen, um auf einer Zeichenfläche zu malen. Wenn du also eine neue Canvas erstellst, gibt es nichts worauf diese zeichnen kann. Damit dies erst möglich wird, muss man der Handle-Eigenschaft der Canvas einen (gültigen) Gerätekontext (DC) zuweisen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:45 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-2025 by Thomas Breitkreuz