2009-11-20 24 views
15

Sowohl Console.Read() als auch Console.ReadKey() scheinen auf das Drücken einer Taste zu warten. Wie kann ich feststellen, ob etwas gedrückt wurde, ohne das Programm tatsächlich zu warten, bis eine Taste gedrückt wird?C#: Überprüfen Sie, ob eine Taste in der Konsole gedrückt wurde.

+4

Nein; Er möchte herausfinden, ob eine Taste in der Programmkonsole gedrückt wurde, nicht im Rest des Systems. – SLaks

+1

Das stimmt. Bis jetzt ist es für mich nicht notwendig, einen Keylogger zu entwickeln. Stattdessen sollte diese Frage eher zu einer Fehlersuche führen. Es war eines dieser Dinge, die du kennst, wenn du die Sprache gut beherrschst - aber die (ich persönlich) es schwierig finde, sie in der Dokumentation zu suchen. – KalEl

Antwort

31

Sie können auf Console.KeyAvailable abfragen, um zu wissen, ob Sie etwas lesen können.

+0

das ist nützlich! Vielen Dank! –

1

Fügen Sie einfach die folgenden, wo Sie warten wollen:

while (!Console.KeyAvailable) {} 
Verwandte Themen