![]() |
Re: Programm mit Tastatur steuern?
Na endlich :thumb:
Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState); begin If Key=VK_RIGHT then showmessage('Rechts'); If Key=VK_LEFT then showmessage('Links'); end; |
Re: Programm mit Tastatur steuern?
Übrigens: Wenn sich da nicht alles geändert hat, findet man eine Liste der VK-Konstanten unter
![]() edit: Zur Not wäre auch noch GetAsyncKeystate / GetKeystate möglich (falls man eine sofortige Reaktion wünscht):
Delphi-Quellcode:
procedure TFormX.TimerXTimer(Sender: TObject);
// -------------------^ Intervall klein begin if GetAsyncKeystate(VK_LEFT) < 0 then ShowMessage('Links'); end; |
Re: Programm mit Tastatur steuern?
Irgendwie reagierеt das Programm auf die Right- u. Downtaste ganz komisch und das liegt nicht am Code, denn wenn ich die Funktion der Lefttaste (was sehr gut funkt) der rechten zuweise - spinnt das Prog. Wird der Code wieder zurück der linken zugewiesen geht alles ok.
Also bei den Right- und Downtaste funktioniert alles ok, bei den Left- und Uptaste nicht. :gruebel: |
Re: Programm mit Tastatur steuern?
Kann mir niemand helfen? :pale:
|
Re: Programm mit Tastatur steuern?
Hallo,
ohne Code ? < es liegt nicht am Code > Hm, im Explorer funktionieren alle 4 Tasten, was MS da wohl wieder verbrochen hat ... Im Ernst: Natürlich liegt es an deinem Code! Hänge mal ein Minimal-Programm (ohne Exe), was das Problem zeigt an den nächsten Post. Heiko |
Re: Programm mit Tastatur steuern?
Ich weise den beiden Tasten die gleiche Funktion zu und sie arbeiten unterschiedlich. Ich spinne doch nicht. Die selbe Funktion, per VK_Left funkt alles richtig, VK_Right nicht. :wall: VK_Up auch ok, VK_Down spinnt wie die VK_Right.
|
Re: Programm mit Tastatur steuern?
Hallo,
und was sollen wir ohne Code tun ? Raten ? Ich weiss ja nicht mal, was die aktuell auf deinem Form hast. Mach ein Minimal-Bsp., was sich kompilieren läßt, und hänge es an ein Post. Heiko |
Re: Programm mit Tastatur steuern?
Liste der Anhänge anzeigen (Anzahl: 1)
Hier der Code
Delphi-Quellcode:
Jetzt das Problem - beide Tasten haben die gleiche Aufgabe. Jetzt wählt mal in der ComboBox irgendwas aus, falls die Stelle falsch ist - erscheint das oben-rechts im Form. Jetzt klickt man die linke Taste kommt ein neuer Vers, die Fehlermeldung verschwindet und in der ComboBox erscheint der Text "Der Vers steht in...?" So muss es auch sein!
procedure TForm1.dsAnzeigen;
begin Label1.Caption:=losungen[z].ntvers; Label2.Caption:=losungen[z].ntversst; Label1.Width:=328; Image19.Hint:=losungen[z].ntversst; end; procedure TForm1.Image16Click(Sender: TObject); begin if z=366 then begin z:=1; dsAnzeigen; Panel1.Visible:=True; Panel1.SetFocus; Panel1.Visible:=False; ComboBox1.ItemIndex:=0; end else begin Inc(z); dsAnzeigen; Panel1.Visible:=True; Panel1.SetFocus; Panel1.Visible:=False; ComboBox1.ItemIndex:=0; end; end; procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin If Key=VK_Left then begin Image16Click(Sender); end; If Key=VK_Right then begin Image16Click(Sender); end; end; Jetzt macht man das selbe mit der rechten Taste - spinnt das Prog, die Fehlermeldung verschwindet nicht und die ComboBox1.Text bekommt den ItemIndex:=1 obwohl es die 0 sein muss. Wenn man aber die Taste das zweite mal klickt geht wieder alles ok. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:44 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 by Thomas Breitkreuz