Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi DXInput - 2 gleichzeitige Eingaben verhindern (https://www.delphipraxis.net/16801-dxinput-2-gleichzeitige-eingaben-verhindern.html)

Spurius 23. Feb 2004 16:39


DXInput - 2 gleichzeitige Eingaben verhindern
 
Hallo,
wie kann ich in DXInput von DelphiX verhindern, dass 2 verschiedene Tastatureingaben zur selben Zeit berücksichtigt werden?
Ich hab ein Object, welches sich aber nicht schräg bewegen soll, sondern nur Up,Down,Right,Left.
Gruß
Spurius

ISAS 23. Feb 2004 17:46

Re: DXInput - 2 gleichzeitige Eingaben verhindern
 
Delphi-Quellcode:
procedure TAnimation.DoMove(MoveCount: Integer);
var g:integer;
begin
g:=0;

  inherited DoMove(MoveCount);
  if g=0 then begin
  If isUp in Form1.DXInput1.States Then begin
    Y := Y -2;
    g:=1;
    end;
    end;
    if g=0 then begin
  If isDown in Form1.DXInput1.States Then begin
    Y := Y + 2;
    g:=1;
    end;
    end;
    if g=0 then begin
  If isLeft in Form1.DXInput1.States Then begin
    X := X -2;
    g:=1;
    end;
    end;
    if g=0 then begin
  If isRight in Form1.DXInput1.States Then begin
    X := X +2;
    g:=1;
    end;
    end;
end;
Ich kenn mich da zwar nicht so gut aus, aber das wäre eine Lösung, die funktioniert. Obs eine einfachere bzw logischere bzw bessere Lösung gibt, kann ich dir leider nicht beantworten. Doch es ist nur eine schnelle Antwort, damit du nicht so lange warten brauchst, bis eine Bessere kommt und in der Zwischenzeit weiterproggn kannst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:49 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz