Einzelnen Beitrag anzeigen

LeoSam
(Gast)

n/a Beiträge
 
#1

'leeres' Bitmap erstellen?

  Alt 18. Feb 2007, 14:06
Hallo,

Ich habe ein Image (Image1) erstellt und möchte nun ein Bild "reinzeichnen", beispielsweise einen Farbverlauf

Delphi-Quellcode:
procedure TForm1.Bild_zeichnen;
type
  PixArray = Array [1..3] of Byte;
var
  p: ^PixArray;
  h,w: Integer; bit: TBitmap;
begin
  bit := image2.Picture.Bitmap; //Was muss hier stehen???
  bit.Height := 100;
  bit.Width := 100;
  image1.Width := 100;
  image1.Height := 100;

  for h:=0 to Bit.Height-1 do
  begin
    p:= Bit.ScanLine[h];
    for w:=0 to Bit.Width-1 do
    begin
      p^[3]:=255; //
      p^[2]:=w; // Beispiel: Farbverlauf von rot nach gelb
      p^[1]:=0; //
      Inc(p);
    end;
  end;

  image1.Picture.Bitmap := bit;

end;
Das Problem:
Ich wusste nicht, was ich "bit" am Anfang zuweisen musste, deswegen habe ich ein neues Image (Image2) erstellt und 'bit' den (leeren?) Inhalt von Image2 zugewiesen...
Wenn ich vorher ein Bild in das Image2 geladen habe funktioniert es, wenn nicht wird beim Image1 einfach alles weiß, kann mir jemand sagen warum und was ich dem Bitmap 'bit' am Anfang zuweisen muss??

Vielleicht stehe ich grad total auf dem Schlauch aber ich weiß einfach nicht weiter

Danke schon mal im Vorraus
MFG leo
  Mit Zitat antworten Zitat