Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Tastaturdelay der Tasten ausschalten? (https://www.delphipraxis.net/38715-tastaturdelay-der-tasten-ausschalten.html)

Delphi-Noobie 23. Jan 2005 12:08


Tastaturdelay der Tasten ausschalten?
 
Hi,

kann man die Verzögerung der einzelnen Tasten auf der Tastatur irgendwie ausschlaten z.B wenn man dauerhaft auf "a" drückt kommt zuerst ein "a" und dann nach einer bestimmten Zeit ganz viele "a's" hintereinander. Ich will aber, dass sofort ganz viele "a's" kommen und es sollte auch bei der Leertaste Funktionieren und rückgängig machen sollte man es auch können.

Gruß

Delphi-Noobie

Christian Seehase 23. Jan 2005 15:27

Re: Tastaturdelay der Tasten ausschalten?
 
Moin Delphi-Noobie,

Zitat:

Zitat von Delphi-Noobie
rückgängig machen sollte man es auch können.

erkläre bitte mal, was das werden soll.
Im Moment sieht es für mich nämlich danach aus, als müsste ich den Thread hier schliessen.

perle 24. Jan 2005 09:08

Re: Tastaturdelay der Tasten ausschalten?
 
wieso das Christian? Obwohl ich noch nicht weiss was ich damit anfangen würde, fände ich das auch ganz interessant mal zu wissen.

Delphi-Noobie 24. Jan 2005 11:26

Re: Tastaturdelay der Tasten ausschalten?
 
Naja ich will ein Spiel Programmieren, wo man, wenn man auf die Leertaste drückt, schiessen kann. Aber durch die Verzögerung kommt zuerst ein Schuss, dann kommt kurz nix und dann Dauerfeuer, wegen dem Tastendelay (Man kann es ja auch manuell umstellen bei Systemsteuerung und dann Doppelklick auf Tastatur, jedoch nich ganz! ohen Verzögerung). Ich benutze auch nicht Onkeydown oder so, sondern arbeite mit registerhotkey, da ich das Formular nicht brauche (also so in etwa: is msg.hotkey = ord(vk_space) then ...). Und da möchte ich keine Verzögerung haben und möglichst auch keinen Timer verwenden :). Is das möglich oder nich?? :roll:

Robert Marquardt 24. Jan 2005 12:06

Re: Tastaturdelay der Tasten ausschalten?
 
Am Tastaturrepeat sollte man nicht rumspielen. Es geht aber SystemParametersInfo (oder aehnlcih) heisst die Funktion.
Fuer ein Game ist das aber uninteressant. Dort benutzt man entweder DirectX oder verwaltet den Zustand
Taste gedrueckt selber anhand der WM_KEYDOWN oder WM_KEYUP Messages oder fragt den Zustand mit GetKeyState ab.

Delphi-Noobie 24. Jan 2005 12:27

Re: Tastaturdelay der Tasten ausschalten?
 
Ich kenn mich mit DelphiX aber nicht aus und weis nicht, wie man Wm_keydown verwalet. Oder kann man das irgendwie in meine Procedure einbauen?
Code:
public
procedure WMHotKey(var Msg : TWMHotKey); message WM_HOTKEY;

implementation

// oncreate -> RegisterHotKey(Form1.Handle, vk_space, 0, ord(vk_space));
// ondestroy -> UnRegisterHotKey(Form1.Handle, ord(vk_space));

procedure TForm1.WMHotKey(var Msg : TWMHotKey);
begin
if msg.HotKey = ord(vk_space) then begin
.... // das hier klappt ja nicht
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:48 Uhr.

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