![]() |
Malen auf DXDraw
Hi, nochmal ne Frage zu DirectX (DelphiX):
Wie kann man denn Bilder aus der DXImageList auf das DXDraw male.? Ich kenn schon ne Methode, aber..
Delphi-Quellcode:
passt mir nicht.
DXImageList.Items[0].draw(DXDraw.Surface, 0, 0, 0);
Ich will eine Möglichkeit, dass man Items "herstellt" und den Platz auf dem DXDraw festlegt. In diese Items soll man dann ein Bild hineinladen können. Das ist einfacher, denn wenn bei tatendruck ein bild verändert werden soll, muss man einfach nur dem Item ein neues Bild zuweisen.. Gibt es eine solche Möglichkeit?? :gruebel: |
Re: Malen auf DXDraw
Am besten verwendest du TImageSprite.
Delphi-Quellcode:
...
type TItem = class(TImageSprite) private public procedure erzeugen; end; var Item: TItem; ... procedure TItem.erzeugen; begin Image := DxImageList.Items.Find('Bild1'); Width := Image.Width; Height := Image.Height; X := 10; Y := 10; Z := 1; end; procedure TForm1.Create ... begin Item := TItem.Create(DxImageSprite.Engine); Item.erzeugen; end; |
Re: Malen auf DXDraw
Zitat:
is delphi nicht mit engl´scher programmsprache?? :gruebel: |
Re: Malen auf DXDraw
Alles klar jetzt...aber:
kann man bei diesem code den Items namen geben, sodass man später nur noch sagen muss: In Item[1] Bild 'bla' laden ???
Delphi-Quellcode:
procedure TFormZero.DXTimerTimer(Sender: TObject; LagCount: Integer);
begin DXImageList.Items[0].draw(DXDraw.Surface, 0, 0, 0); DXImageList.Items[1].draw(DXDraw.Surface, 240, 10, 0); DXImageList.Items[3].draw(DXDraw.Surface, 10, 120, 0); DXImageList.Items[4].draw(DXDraw.Surface, 10, 180, 0); DXImageList.Items[6].draw(DXDraw.Surface, 10, 240, 0); DXImageList.Items[8].draw(DXDraw.Surface, 10, 300, 0); DXImageList.Items[10].draw(DXDraw.Surface, 10, 360, 0); DXImageList.Items[12].draw(DXDraw.Surface, 310, 130, 0); DXDraw.Flip; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:10 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