Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Bewegung von Bild auf DXDraw (https://www.delphipraxis.net/71179-bewegung-von-bild-auf-dxdraw.html)

hille 10. Jun 2006 11:09


Bewegung von Bild auf DXDraw
 
Ich will, das man ein Bild, welches ich vorher auf die DXDraw Oberfläche lade, bewegen kann. Mit TImage kenn ich mich aus, aber dort kommt immer ein Flackern. Also will ich das jetzt mal so probieren.

Ich weiß nur das man das über DXInput macht. Aber Wie?

Hille

mimi 11. Jun 2006 08:58

Re: Bewegung von Bild auf DXDraw
 
Die position des bildes musst du in interger variablen speichern z.b. in x und y
Dann schaltes du in form1 KeyPreview auf True und gehts in onKeyDown rein und schreibst z.b.


if key = vk_down then Inc(y)
if key = vk_up then Dec(y)

für unten und oben wobei ich kommen immer mit down und up durcheinader kann sein das es vertauscht ist

für lings und rechts:
vk_right und vk_left

für unten dec(y)
für oben Inc(y)
für lings dec(x)
für rechts inc(x)

hille 13. Jun 2006 13:40

Re: Bewegung von Bild auf DXDraw
 
Ja, aber es wird doch ein Bild auf die DXDraw Oberfläche gezeichnet, und dieses soll sich bewegen. Und wenn ich ein TImage nehme, verschwindet das hinter dem Bild und selbst wenn ich es bewege (dieses TImage) dann flackert es!

Und wie bekomme ich die Koordinaten des Bildes auf der DXDraw Oberfläche?
X=double :?:

Hille

inherited 13. Jun 2006 14:00

Re: Bewegung von Bild auf DXDraw
 
Nimm eine TDXImageList, lad die bilder da rein und ein DXInput. Such einfach mal nach Tutorials

uwewo 13. Jun 2006 14:51

Re: Bewegung von Bild auf DXDraw
 
Wenn Du mit DelphiX arbeitest solltest Du Dir die Tutorials genauer anschauen
und nur diese Komponenten auf DXDraw einsetzen.

Alles andere macht keinen Sinn.

mimi 17. Jun 2006 16:46

Re: Bewegung von Bild auf DXDraw
 
@inherited
genau das habe ich auch gemeint also:
ein DXTimer, ein DXImagelist und ein DXDraw...
ich hatte hier ein delphiX tutor erstellt zufinden unter den tutrials unter "Snake Tutor"
die bewegung erreichst du indem du den bildschrim jede 0 ms löscht und neuzeichnes....
das geht auch mit einem TImage da ist es nur aufwendiger.... weil du brachst ein buffer in den du erst zeichnest und dann das bild jede 1 ms per Timer oder im OnIdl ereignis aus diesem buffer raus zeichnest z.b. mit CopyRect oder BitBTL...


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:31 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz