Autor Beitrag
Caro:3
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Di 09.03.21 19:52 
Hey,
in Informatik sollen wir als Facharbeit ein Spiel programmiere. Ich hab mir ein Jump 'n Run ähnliches Spiel ausgesucht. Allerdings scheitert es schon am grundlegende: der Bewegung!:( Ich hab schon mehrere Einzel-Codes mit denen ich ein Shape dazu bringe sich durch das drücken der 'D'- bzw. der 'A'-Taste nach links oder rechts zu bewegen. Diese Codes lassen sich allerdings nicht in mein schon bestehendes größeres Programm einfügen und bis jetzt habe ich es auch noch nicht geschafft das ganze auf ein Image zu übertragen.
Hat jemand Tipps, damit es funktioniert?
LG Caro :3
PS: Ich programmiere in Lazarus :)
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Mi 10.03.21 10:14 
Hallo und :welcome:,

woran scheitert es denn genau, an dem Abfragen der Tasten oder dem Ändern der Position eines Images?

Bei ersterem mußt du ein OnKeyDown (oder OnKeyPress)-Ereignis der Form erstellen, d.h. die Ereignisprozedur erstellen und dann dem Ereignis, im Konstruktor bzw. über den Designer, zuweisen:
ausblenden Delphi-Quelltext
1:
OnKeyDown := @FormKeyDown;					

Letzeres geht einfach über die Änderung der Eigenschaften Left und Top
ausblenden Delphi-Quelltext
1:
2:
3:
image.Left := image.Left + 1;
{bzw.}
image.Top := image.Top + 1;
Caro:3 Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Mi 10.03.21 10:18 
Hey,
Vielen Dank für deine Antwort:D
Ich hab es gestern Abend noch hinbekommen: Das Problem war, dass der Button angewählt war und somit das Image nicht angesprochen wurde...ich wusste gar nicht, dass das geht...
Trotzdem vielen Danke🥰
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 10.03.21 11:26 
Hat Lazarus am Formular vielleicht auch eine Eigenschaft KeyPreview? Damit bekommst du die Events auch, wenn ein Button gerade den Eingabefokus (so heißt das) hat.