ConsoleKeyInfo ConsoleKeyInfo ConsoleKeyInfo ConsoleKeyInfo Struct

Definición

Describe la tecla presionada de la consola, incluidos el carácter representado por la tecla de consola y el estado de las teclas modificadoras MAYÚS, ALT y CTRL.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
Herencia
ConsoleKeyInfoConsoleKeyInfoConsoleKeyInfoConsoleKeyInfo
Atributos

Ejemplos

En el ejemplo siguiente se muestra ConsoleKeyInfo cómo usar un objeto en una operación de lectura.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 

Comentarios

El ConsoleKeyInfo tipo no está pensado para que lo creen los usuarios.The ConsoleKeyInfo type is not intended to be created by users. En su lugar, se devuelve al usuario en respuesta a una llamada Console.ReadKey al método.Instead, it is returned to the user in response to calling the Console.ReadKey method.

El ConsoleKeyInfo objeto describe la ConsoleKey constante y el carácter Unicode, si existe, que corresponden a la tecla presionada de la consola.The ConsoleKeyInfo object describes the ConsoleKey constant and Unicode character, if any, that correspond to the pressed console key. El ConsoleKeyInfo objeto también describe, en una combinación bit a ConsoleModifiers bit de valores de, si una o más teclas modificadoras Mayús, Alt o Ctrl se presionaron al mismo tiempo que la tecla de la consola.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.

Constructores

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

Inicializa una nueva instancia de la estructura ConsoleKeyInfo utilizando el carácter especificado, la tecla de consola y las teclas modificadoras.Initializes a new instance of the ConsoleKeyInfo structure using the specified character, console key, and modifier keys.

Propiedades

Key Key Key Key

Obtiene la tecla de consola a la que el objeto ConsoleKeyInfo representa.Gets the console key represented by the current ConsoleKeyInfo object.

KeyChar KeyChar KeyChar KeyChar

Obtiene el carácter Unicode al que el objeto ConsoleKeyInfo actual representa.Gets the Unicode character represented by the current ConsoleKeyInfo object.

Modifiers Modifiers Modifiers Modifiers

Obtiene una combinación bit a bit de valores de ConsoleModifiers que especifica que una o más teclas modificadoras se han presionado al mismo tiempo que la tecla de consola.Gets a bitwise combination of ConsoleModifiers values that specifies one or more modifier keys pressed simultaneously with the console key.

Métodos

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

Obtiene un valor que indica si el objeto ConsoleKeyInfo especificado es igual al objeto ConsoleKeyInfo actual.Gets a value indicating whether the specified ConsoleKeyInfo object is equal to the current ConsoleKeyInfo object.

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

Obtiene un valor que indica si el objeto especificado es igual al objeto ConsoleKeyInfo actual.Gets a value indicating whether the specified object is equal to the current ConsoleKeyInfo object.

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

Devuelve el código hash del objeto ConsoleKeyInfo actual.Returns the hash code for the current ConsoleKeyInfo object.

Operadores

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

Indica si los objetos ConsoleKeyInfo especificados son iguales.Indicates whether the specified ConsoleKeyInfo objects are equal.

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

Indica si los objetos ConsoleKeyInfo especificados no son iguales.Indicates whether the specified ConsoleKeyInfo objects are not equal.

Se aplica a

Consulte también: