![]() |
Re: GetTickCount
Pack ne TImageList auf die Form. Doppelklick drauf, Bilder hinzufügen.
Und dann nur noch mit der DrawMethode auf das Bild zeichnen, Codebeispiel dürfte in der OH stehen. |
Re: GetTickCount
Mal ne doofe Frage:
Wozu brauchst du das? |
Re: GetTickCount
Ich glaube, er will zu einem Löschvorgang eine Art Animation eines Mülleimers abspielen.
|
Re: GetTickCount
Zitat:
---jaja, paintbox wäre besser, aber das is mir zu kompliziert--- |
Re: GetTickCount
Das meinst du nicht ernst, oder?
Mit mehreren Imageboxen und dann auch noch in einzelnen Prozeduren und die Bilder aus Dateien laden? Dass das ruckelt, glaube ich gerne. |
Re: GetTickCount
Zitat:
Ich selbst bin auch so eilig gewesen und wollte ein Spiel proggen, aber aus Erfahrung sag ich dir: DAT WIRD NICHTS ;) Fang erst mit was Kleinerem an und erst, wenn du dir wirklich sicher bist, dass du dich gut auskennst (wie z. B. mit DelphiX oder dergleichen), dann mach das hier nochmal ;) |
Re: GetTickCount
Zitat:
Dann macht er die selbe animation ja nicht 10 mal da die Zeit um ist. Einfach so:
Delphi-Quellcode:
Für ein spiel ist Paintox nicht ganz so schlecht wie Image aber immer noch grotten schelcht.
procedure TForm1.trash;
var start:longint; begin start:=gettickcount; repeat Application.ProcessMessages until GetTickCount>=start+50; image4.picture.LoadFromFile('.\pics\trash_open1.bmp'); repeat Application.ProcessMessages until GetTickCount>=start+100; image4.Picture.loadfromfile('.\pics\trash_open2.bmp'); repeat Application.ProcessMessages until GetTickCount>=start+150; image4.Picture.LoadFromFile('.\pics\trash_blum.bmp'); repeat Application.ProcessMessages until GetTickCount>=start+250; image4.Picture.loadfromfile('.\pics\trash.bmp'); end; nee.. da musst du direkt aufs Canvas Malen mit bitblt
Delphi-Quellcode:
Das ist, so weit ich weis, die schnelltste Möglichkeit fürs 2d malen.
BitBlt(form1.Canvas.Handle,x,y, bild.Width, bild.Height, bild.canvas.Handle,0 ,0,srccopy);
Dann musst du natürlicxh noch bei jedem ONPaint der Form neu Zeichen, damit nix flackert. :wink: |
Re: GetTickCount
Falsch. Am schnellsten gehts mit DirectX oder OpenGL. Allerdings schätze ich mich selbst jetzt mal etwas fortgeschrittener als den Ersteller dieses Threads ein, und OpenGL ist für mich noch "zu hoch".
|
Re: GetTickCount
So ich habs jetzt gelöst:
Delphi-Quellcode:
start wird dann in der Startprozedur deklariert. Also, es doch. Vielen Danke für eure Beiträge.
procedure TForm1.trash;
begin if gettickcount>=start+1000 then start:=gettickcount; if (start+50)<=gettickcount then image4.picture.LoadFromFile('.\pics\trash_open1.bmp'); if (start+100)<=gettickcount then image4.Picture.loadfromfile('.\pics\trash_open2.bmp'); if (start+150)<=gettickcount then image4.Picture.LoadFromFile('.\pics\trash_blum.bmp'); if (start+1000)<=gettickcount then image4.Picture.loadfromfile('.\pics\trash.bmp'); end; |
Re: GetTickCount
Trotzdem, nochmal:
=> Lass es sein und lerne Delphi erstmal grundlegend ;) MfG, air |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:55 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