Einzelnen Beitrag anzeigen

Norbert987

Registriert seit: 27. Nov 2003
Ort: Aachen
74 Beiträge
 
Delphi 7 Professional
 
#8

Re: Wiederholung bei gedrückter taste

  Alt 6. Mär 2007, 02:17
Also wenn ich das richtig verstanden habe, dann möchte er gerade dass das Männchen nur einen Schritt macht, auch wenn die Taste weitere Signale sendet. Ich würde es so machen:

Delphi-Quellcode:
var
  down : boolean;

[..]

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if down then exit;

  if ani in [11..14] then
    case key of
      vk_right: ani:=11;// 1=gehen 1=rechts
    end;
  down := true;
end;

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  down := false;
end;
Du musst halt "down := false;" noch zu beginn des Programmes eintragen. Den Timer brachst du nicht mehr und KeyUp muss halt wie KeyDown eingetragen werden.
  Mit Zitat antworten Zitat