Kolla lite på klassen KeyEventArgs. Med den kan du kolla vilken tangent som tryckts ned. ja, jag har kollat den och man kan ju kolla om en tanget har tryckts ned lr inte.,,. men jag vill kunna kolla om en tangent "ÄR" nedtryck lr inte.,., lösning?? Ur .NET Class Library (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemwindowsformskeyeventargsclasstopic.asp): nja,.,.., jag behöver det till ett tetris-spel.,.,,. och vill att bitarna ska flytta sig när man håller ned en tangent,.,.,.,. nån som vet hur man gör detta?????? Ja, du skall lyssna på keydown eventet precis som Daniel föreslår och flytta bitarna x pixlar varje gång åt det hållet som tangenten säger att användaren vill flytta åt. ja,. jag vet,. .,men det blir inte bra,.., först så flyttar biten sig ett steg,.,. sen blir det paus ,.,. sen så kommer resten,.,, . du kan väl sätta en flagga som flyttar biten ända tills du får ett KeyUpEvent.... då kan du ju flytta hur fort du vill... ja.,,. nu fungerar det ,.. ,., .,men om jag använder piltangenterna så måste man hålla in Ctrl eller Alt för att det ska fungera.,., går det att fixa till på nåt sätt?? jag får keydown-events på piltangenterna... jag har försökt med Keypreview på & av, men jag får down-events från piltangenterna om jag håller in Ctrl, , men det blir lite jobbigt efter ett tag,, hur fixar man det??? Ahh, äntligen hittade jag felet.Sv: C# tangent nedtryckt lr inte??
Sv: C# tangent nedtryckt lr inte??
Sv: C# tangent nedtryckt lr inte??
"The KeyDown event occurs when the user presses any key. The KeyUp event occurs when the user releases the key. Duplicate KeyDown events occur each time the key repeats, if the key is held down, but only one KeyUp event is generated when the user releases the key."
Verkar som man får hålla koll på när knappen släpps upp och först då t ex generera en egen händelse. Det enklaste är väl att skapa en klass som hanterar kontollen av detta.Sv: C# tangent nedtryckt lr inte??
Sv: C# tangent nedtryckt lr inte??
Om du håller ner en tangent länge så får du ju flera keydown-events.
/JohanSv: C# tangent nedtryckt lr inte??
jag vill inte ha den där pausen,..,,. det måste finnas nåt sätt så att det går att kontrollera om en tangent är nertryckt eller inte,.,.Sv: C# tangent nedtryckt lr inte??
Lite pseudokod...
Alltså KeyDown:
if (!looping){
StartLooping();
}
KeyUp:
StopLooping();
looping=false;
/JohanSv: C# tangent nedtryckt lr inte??
Sv: C# tangent nedtryckt lr inte??
Kör du med keypreview på formuläret.
/JohanSv: C# tangent nedtryckt lr inte??
Sv: C# tangent nedtryckt lr inte??
Det var en kontol som "Stal" alla fina tangent-trykningar,,
jaja, nu fungerar allt iaf. :-)