Ahoj, potřeboval bych návod, jak snímat a ošetřit stisk dvou kláves najednou (klávesy stisknuty a drženy), kdy každá provádí jinou operaci. A druhá otázka je, jak zamezit prodlevě po stisknutí a přidržení klávesy mezi prvním a druhým opakováním (klasicky např. při inkrementaci proměnné závislé na stisku, dojde při stisku k první a při přidržení klávesy až po kratší době k cyklické "rychlejší" inkrementaci použité proměnné - tuto prodlevu potřebuji odstranit)? Dík za případnou pomoc :).
Fórum › .NET
Snímání a ošetření stisku/přidržení dvou kláves naráz
Na zjištění stisku více kláves je ve WinAPI funkce GetKeyboardState. A ta prodleva je daná nastavením systému, protože by ti to jinak po stisku každé klávesy napsalo více jak jeden znak. Pokud to chceš mít ve své moci, tak to musíš udělat jinak a asi nejlépe vlákno, které volá v definovaných časech GetKeyboardState a podle stisknutých kláves provádí jednotlivé operace.
#2 liborb
...dík za pomoc. Sice mi to s tou Tebou nabízenou funkcí nějak nešlo, ale použil jsem GetAsyncKeyState. Naučil jsem se díky tomu jak v c# využít API funkce :). A tu druhou část jsem už před tím chtěl řešit přes časovač. Nakonec jsem po troše hledání dosáhl požadovaného výsledku, ještě jednou dík....
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Neočekávané chování při stisku dvou kláves — založil stirl021
Snímání kláves — založil TB
Simulace stisku kláves — založil Vlasta
Snímání kláves (linux) — založil Atheo
Simulace stisku kláves v terminálu — založil Lávis
Moderátoři diskuze