![]() |
"spielfeld", also jedes stück 10x10px gross
Vorweg mal wieder die Beichte: Ich hab schon gesucht *g*
also, ich habe ein 2 dimensionales array[0..10,0..10] of TBitmap dies hab ich gefüllt... Wie krieg ich dies nun in ein image... hm, mit canvas.draw? mfg |
Re: "spielfeld", also jedes stück 10x10px gross
Das müsste ca. so gehen:
Delphi-Quellcode:
Runtergetippt & nicht getestet
procedure MaleFeld(Image: TImage; Felder: TImgArray);
var i, j: Integer: begin for i := Low(Felder) to High(Felder) do for j := Low(Felder[i]) to High(Felder[i]) do Image.Canvas.Draw(i * 10, j * 10, Felder[i, j]); end; |
Re: "spielfeld", also jedes stück 10x10px gross
hm, eine AV...
Delphi-Quellcode:
scheint mit draw zusammenzuhängen...
spielfeld: array[0..10,0..10] of TBitmap;
{...} procedure MaleFeld; var i, j: Integer; begin for i := Low(spielfeld) to High(spielfeld) do for j := Low(spielfeld[i]) to High(spielfeld[i]) do begin spielfeld[i,j].Canvas.Brush.Color:=clBlack; form1.Image1.Canvas.Draw(i * 10, j * 10, spielfeld[i, j]); end; end; procedure TForm1.Button1Click(Sender: TObject); begin MaleFeld; end; mfg |
Re: "spielfeld", also jedes stück 10x10px gross
Du hast die Bitmaps wohl noch nicht erzeugt. Dann gibts ne AV beim Zuweisen der Brush.Color. Am besten davor noch eine Prüfung auf Bitmap <> nil einbauen.
|
Re: "spielfeld", also jedes stück 10x10px gross
Zeig mal deinen Code in dem du die Bitmaps erzeugst.
|
Re: "spielfeld", also jedes stück 10x10px gross
nuno, es geht :wall: :wall: :wall: :wall: :wall:
da müsste man nur noch einen rahmen drum machen *zauber*
Delphi-Quellcode:
DAS funktioniert nicht(Der rahmen...) sonst :thumb:
var
Form1: TForm1; spielfeld: array[0..10,0..10] of TBitmap; {...} procedure MaleFeld; var i, j: Integer; begin for i := Low(spielfeld) to High(spielfeld) do for j := Low(spielfeld[i]) to High(spielfeld[i]) do begin spielfeld[i,j].Canvas.Brush.Color:=clBlack; spielfeld[i,j].Canvas.Pen.Color:=clYellow; spielfeld[i,j].Canvas.Rectangle(0,0,10,10); form1.Image1.Canvas.Draw(i * 10, j * 10, spielfeld[i, j]); end; end; procedure TForm1.Button1Click(Sender: TObject); begin MaleFeld; end; procedure TForm1.FormCreate(Sender: TObject); var i, j: Integer; begin for i := Low(spielfeld) to High(spielfeld) do for j := Low(spielfeld[i]) to High(spielfeld[i]) do begin spielfeld[i,j]:=TBitmap.Create; end; end; mfg |
Re: "spielfeld", also jedes stück 10x10px gross
Zitat:
Delphi-Quellcode:
form1.Image1.Canvas.Draw(i * 12 + 1, j * 12 + 1, spielfeld[i, j]);
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:03 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