Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.545 Beiträge
 
Delphi 11 Alexandria
 
#17

Re: Tastendruck abfrage

  Alt 26. Mai 2008, 17:26
Noch eine Möglichkeit: einen Typen definieren und bei Tastendruck setzen.
Delphi-Quellcode:
type TTaste = (ttNone,ttLeft,ttRight,ttDown,ttTurn);

...
//privates Feld vom Typ TTaste im Form definieren und mit ttNone initialisieren
...

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if ((spielaktiv > 0) or (not(spielaktiv > 0) and (key <> 27))) then exit;
      case key of
       {Escape} VK_ESCAPE: close;
       {left}   VK_LEFT : FTaste := ttLeft;
       {up}     VK_UP : FTaste := ttTurn;
       {right}  VK_RIGHT : FTaste := ttRight;
       {bottom} VK_DOWN : FTaste := ttDown;
               end;
end;
Im Timer-Event wertest Du nun FTaste aus und bewegst den Stein entsprechend. Anschließend FTaste wieder auf ttNone setzen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat