Hallo PhöniX,
eines solltest du bedenken: Wenn du die DirectInput-Abfrage verwendest, wird nicht fest gestellt, wann die Taste gedrückt wird, sondern, ob sie unten oder oben ist. D.h. wenn du DirectInput benutzt wird das Laden des Bildes vermutlich einmal pro Frame ausgeführt. Also: Taste 1 Sekunde gedrück gehalten --> Bild wurde ca. 60 mal nachgeladen.
Wenn du ein Bild irgendwie schön fließend bewegen willst, dann mach es mit DirectInput. Dazu kannst du die von citybreaker angegebene Prozedur verwenden, wobei du allerdings die Zeile
Player.X := Player.X -3;
gegen das ersetzt, was eben passieren soll, wenn man die entsprechende Taste drückt.
Wenn du du dagegen bei einem Tastendruck nur
einmal etwas ausführen lassen willst, dann benutzte die OnKeyDown-Prozedur der Form. (Siehe auch
OH)
Grüße
Seniman