Метод ReadKey
Метод ReadKey блокирует
программу, пока пользователь не
нажмёт клавишу. В примерах его
не вызывают - разбирают
ConsoleKeyInfo вручную.
При intercept: true символ
не отображается на экране.
Строку целиком читает
ReadLine.
Синтаксис
ConsoleKeyInfo key = Console.ReadKey();
ConsoleKeyInfo key2 = Console.ReadKey(intercept: true);
Пример
Давайте прочитать KeyChar
у собранного ConsoleKeyInfo:
using System;
class Program
{
static void Main()
{
var info = new ConsoleKeyInfo(
'a', ConsoleKey.A, false, false, false);
string res = info.KeyChar.ToString();
Console.WriteLine(res);
}
}
Результат выполнения кода:
"a"
Пример
Давайте вывести имя клавиши через
Key.ToString:
using System;
class Program
{
static void Main()
{
var info = new ConsoleKeyInfo(
'a', ConsoleKey.A, false, false, false);
string res = info.Key.ToString();
Console.WriteLine(res);
}
}
Результат выполнения кода:
"A"
Пример
Давайте проверить, что
ReadKey возвращает тот же
тип:
using System;
class Program
{
static void Main()
{
var info = new ConsoleKeyInfo(
'a', ConsoleKey.A, false, false, false);
bool res = info is ConsoleKeyInfo;
Console.WriteLine(res);
}
}
Результат выполнения кода:
True