Heim >Backend-Entwicklung >C++ >Wie behandelt man Konsolen-Tastendruckereignisse in C#?

Wie behandelt man Konsolen-Tastendruckereignisse in C#?

Susan Sarandon
Susan SarandonOriginal
2025-01-04 01:07:391035Durchsuche

How to Handle Console Key Press Events in C#?

Konsolentastendruck-Ereignisbehandlung in C#

In Konsolenanwendungen erfordert die Erfassung von Tastenanschlägen einen anderen Ansatz als bei herkömmlichen GUI-Anwendungen. In C# können Sie sich mit dem folgenden Codeausschnitt für Tastendruckereignisse in einer Konsolenanwendung registrieren:

public class Program
{
    public static void Main()
    {
        // Read keystrokes until the 'X' key is pressed
        ConsoleKeyInfo keyinfo;
        do
        {
            keyinfo = Console.ReadKey();
            // Display the pressed key
            Console.WriteLine(keyinfo.Key + " was pressed");
        }
        while (keyinfo.Key != ConsoleKey.X);
    }
}

Erklärung:

  • Console.ReadKey( ): Erfasst die nächste vom Benutzer gedrückte Taste, ohne sie auf der Konsole anzuzeigen.
  • Der Tastendruck wird in einer ConsoleKeyInfo-Struktur gespeichert. Bietet Zugriff auf die Taste, die gedrückt wurde.
  • Die Do-While-Schleife liest und zeigt weiterhin Tastendrücke an, bis die Taste „X“ gedrückt wird, wodurch die Schleife verlassen wird.

Hinweis: Damit Konsolenanwendungen Tastendruckereignisse erfassen können, müssen sie fokussiert werden. Wenn Ihre Anwendung keinen Fokus hat, empfängt sie keine Tastendruckereignisse.

Das obige ist der detaillierte Inhalt vonWie behandelt man Konsolen-Tastendruckereignisse in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn