Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#4

AW: zu bestimmten Ereignissen Tasten ignorieren

  Alt 9. Apr 2011, 16:15
Von Andorra habe ich zugegebenermaßen keinen Schimmer, aber mir fällt auf, dass Du sehr viel redundaten Code schreibst. Ich habe das KeyPress einmal gekürzt:
Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if Key = #27 then
    Close
  else if (Key in ['a','w','s','d']) and (Spieler.IsIdle) then
    begin
      Spieler.FDistance := 40;
      Spieler.IsMoving := true;
      case Key of
        'a': Spieler.RRichtung := Links;
        'w': Spieler.RRichtung := Hoch;
        'd': Spieler.RRichtung := Rechts;
        's': Spieler.RRichtung := Runter;
      end;
      Application.ProcessMessages;
    end;
end;
Schau einmal ob die Zeile mit dem Application.ProcessMessages etwas bringt. Wenn nicht, kannst Du sie wieder löschen.
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