ConsoleKeyInfo ConsoleKeyInfo ConsoleKeyInfo ConsoleKeyInfo Struct

Определение

Описывает нажатую клавишу консоли, включая символ, представленный этой клавишей, и состояние управляющих клавиш CTRL, SHIFT и ALT.Describes the console key that was pressed, including the character represented by the console key and the state of the SHIFT, ALT, and CTRL modifier keys.

public value class ConsoleKeyInfo
[System.Serializable]
public struct ConsoleKeyInfo
type ConsoleKeyInfo = struct
Public Structure ConsoleKeyInfo
Наследование
ConsoleKeyInfoConsoleKeyInfoConsoleKeyInfoConsoleKeyInfo
Атрибуты

Примеры

В следующем примере показано использование ConsoleKeyInfo объекта в операции чтения.The following example demonstrates using a ConsoleKeyInfo object in a read operation.

using namespace System;

void main()
{
   ConsoleKeyInfo cki;
   // Prevent example from ending if CTL+C is pressed.
   Console::TreatControlCAsInput = true;

   Console::WriteLine("Press any combination of CTL, ALT, and SHIFT, and a console key.");
   Console::WriteLine("Press the Escape (Esc) key to quit: \n");
   do 
   {
      cki = Console::ReadKey();
      Console::Write(" --- You pressed ");
      if((cki.Modifiers & ConsoleModifiers::Alt) != ConsoleModifiers()) Console::Write("ALT+");
      if((cki.Modifiers & ConsoleModifiers::Shift) != ConsoleModifiers()) Console::Write("SHIFT+");
      if((cki.Modifiers & ConsoleModifiers::Control) != ConsoleModifiers()) Console::Write("CTL+");
      Console::WriteLine(cki.Key.ToString());
   } while (cki.Key != ConsoleKey::Escape);
}
// This example displays output similar to the following:
//       Press any combination of CTL, ALT, and SHIFT, and a console key.
//       Press the Escape (Esc) key to quit:
//       
//       a --- You pressed A 
//       k --- You pressed ALT+K 
//       ► --- You pressed CTL+P 
//         --- You pressed RightArrow 
//       R --- You pressed SHIFT+R 
//                --- You pressed CTL+I 
//       j --- You pressed ALT+J 
//       O --- You pressed SHIFT+O 
//       § --- You pressed CTL+U }
using System;

class Example 
{
   public static void Main() 
   {
      ConsoleKeyInfo cki;
      // Prevent example from ending if CTL+C is pressed.
      Console.TreatControlCAsInput = true;

      Console.WriteLine("Press any combination of CTL, ALT, and SHIFT, and a console key.");
      Console.WriteLine("Press the Escape (Esc) key to quit: \n");
      do 
      {
         cki = Console.ReadKey();
         Console.Write(" --- You pressed ");
         if((cki.Modifiers & ConsoleModifiers.Alt) != 0) Console.Write("ALT+");
         if((cki.Modifiers & ConsoleModifiers.Shift) != 0) Console.Write("SHIFT+");
         if((cki.Modifiers & ConsoleModifiers.Control) != 0) Console.Write("CTL+");
         Console.WriteLine(cki.Key.ToString());
       } while (cki.Key != ConsoleKey.Escape);
    }
}
// This example displays output similar to the following:
//       Press any combination of CTL, ALT, and SHIFT, and a console key.
//       Press the Escape (Esc) key to quit:
//       
//       a --- You pressed A 
//       k --- You pressed ALT+K 
//       ► --- You pressed CTL+P 
//         --- You pressed RightArrow 
//       R --- You pressed SHIFT+R 
//                --- You pressed CTL+I 
//       j --- You pressed ALT+J 
//       O --- You pressed SHIFT+O 
//       § --- You pressed CTL+U 
Class Example
   Public Shared Sub Main()
      Dim cki As ConsoleKeyInfo
      ' Prevent example from ending if CTL+C is pressed.
      Console.TreatControlCAsInput = True

      Console.WriteLine("Press any combination of CTL, ALT, and SHIFT, and a console key.")
      Console.WriteLine("Press the Escape (Esc) key to quit: " + vbCrLf)
      Do
         cki = Console.ReadKey()
         Console.Write(" --- You pressed ")
         If (cki.Modifiers And ConsoleModifiers.Alt) <> 0 Then Console.Write("ALT+")
         If (cki.Modifiers And ConsoleModifiers.Shift) <> 0 Then Console.Write("SHIFT+")
         If (cki.Modifiers And ConsoleModifiers.Control) <> 0 Then Console.Write("CTL+")
         Console.WriteLine(cki.Key.ToString)
      Loop While cki.Key <> ConsoleKey.Escape
   End Sub 
End Class 
' This example displays output similar to the following:
'       Press any combination of CTL, ALT, and SHIFT, and a console key.
'       Press the Escape (Esc) key to quit:
'       
'       a --- You pressed A 
'       k --- You pressed ALT+K 
'       ► --- You pressed CTL+P 
'         --- You pressed RightArrow 
'       R --- You pressed SHIFT+R 
'                --- You pressed CTL+I 
'       j --- You pressed ALT+J 
'       O --- You pressed SHIFT+O 
'       § --- You pressed CTL+U 

Комментарии

ConsoleKeyInfo Тип не предназначен для создания пользователями.The ConsoleKeyInfo type is not intended to be created by users. Вместо этого она возвращается пользователю в ответ на вызов Console.ReadKey метод.Instead, it is returned to the user in response to calling the Console.ReadKey method.

ConsoleKeyInfo Объект описывает ConsoleKey константа и символ Юникода, если таковые имеются, соответствующий нажатой клавише консоли.The ConsoleKeyInfo object describes the ConsoleKey constant and Unicode character, if any, that correspond to the pressed console key. ConsoleKeyInfo Также содержит в побитовое сочетание ConsoleModifiers значения, является ли один или несколько SHIFT, ALT или CTRL клавиши-модификаторы была нажата одновременно с клавишей консоли.The ConsoleKeyInfo object also describes, in a bitwise combination of ConsoleModifiers values, whether one or more SHIFT, ALT, or CTRL modifier keys was pressed simultaneously with the console key.

Конструкторы

ConsoleKeyInfo(Char, ConsoleKey, Boolean, Boolean, Boolean) ConsoleKeyInfo(Char, ConsoleKey, Boolean, Boolean, Boolean) ConsoleKeyInfo(Char, ConsoleKey, Boolean, Boolean, Boolean) ConsoleKeyInfo(Char, ConsoleKey, Boolean, Boolean, Boolean)

Инициализирует новый экземпляр структуры ConsoleKeyInfo с использованием заданного символа, клавиши консоли и управляющих клавиш.Initializes a new instance of the ConsoleKeyInfo structure using the specified character, console key, and modifier keys.

Свойства

Key Key Key Key

Возвращает клавишу консоли, представленную текущим объектом ConsoleKeyInfo.Gets the console key represented by the current ConsoleKeyInfo object.

KeyChar KeyChar KeyChar KeyChar

Возвращает символ Юникода, представленный текущим объектом ConsoleKeyInfo.Gets the Unicode character represented by the current ConsoleKeyInfo object.

Modifiers Modifiers Modifiers Modifiers

Возвращает побитовое сочетание значений из перечисления ConsoleModifiers, указывающее, были ли одновременно с клавишей консоли нажаты управляющие клавиши SHIFT, ALT или CTRL.Gets a bitwise combination of ConsoleModifiers values that specifies one or more modifier keys pressed simultaneously with the console key.

Методы

Equals(ConsoleKeyInfo) Equals(ConsoleKeyInfo) Equals(ConsoleKeyInfo) Equals(ConsoleKeyInfo)

Возвращает значение, позволяющее определить, равен ли указанный объект ConsoleKeyInfo текущему объекту ConsoleKeyInfo.Gets a value indicating whether the specified ConsoleKeyInfo object is equal to the current ConsoleKeyInfo object.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Возвращает значение, позволяющее определить, равен ли указанный объект текущему объекту ConsoleKeyInfo.Gets a value indicating whether the specified object is equal to the current ConsoleKeyInfo object.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Возвращает хэш-код для текущего объекта ConsoleKeyInfo.Returns the hash code for the current ConsoleKeyInfo object.

Операторы

Equality(ConsoleKeyInfo, ConsoleKeyInfo) Equality(ConsoleKeyInfo, ConsoleKeyInfo) Equality(ConsoleKeyInfo, ConsoleKeyInfo) Equality(ConsoleKeyInfo, ConsoleKeyInfo)

Указывает, равны ли значения заданных объектов ConsoleKeyInfo.Indicates whether the specified ConsoleKeyInfo objects are equal.

Inequality(ConsoleKeyInfo, ConsoleKeyInfo) Inequality(ConsoleKeyInfo, ConsoleKeyInfo) Inequality(ConsoleKeyInfo, ConsoleKeyInfo) Inequality(ConsoleKeyInfo, ConsoleKeyInfo)

Указывает, верно ли, что значения указанных объектов ConsoleKeyInfo не равны.Indicates whether the specified ConsoleKeyInfo objects are not equal.

Применяется к

Дополнительно