ConsoleKeyInfo ConsoleKeyInfo ConsoleKeyInfo ConsoleKeyInfo Struct

Definizione

Descrive il tasto della console che è stato premuto, oltre al carattere rappresentato dal tasto della console e allo stato dei tasti di modifica MAIUSC, ALT e 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
Ereditarietà
ConsoleKeyInfoConsoleKeyInfoConsoleKeyInfoConsoleKeyInfo
Attributi

Esempi

Nell'esempio seguente viene illustrato come utilizzare un ConsoleKeyInfo oggetto in un'operazione di lettura.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 

Commenti

Il ConsoleKeyInfo tipo non è destinato a essere create dagli utenti.The ConsoleKeyInfo type is not intended to be created by users. Al contrario, viene restituito all'utente in risposta alla chiamata di Console.ReadKey (metodo).Instead, it is returned to the user in response to calling the Console.ReadKey method.

Il ConsoleKeyInfo descrive il ConsoleKey costante e il carattere Unicode, se presente, che corrispondono al tasto premuto sulla console.The ConsoleKeyInfo object describes the ConsoleKey constant and Unicode character, if any, that correspond to the pressed console key. Il ConsoleKeyInfo oggetto descrive inoltre, in una combinazione bit per bit di ConsoleModifiers valori, se uno o più tasti di modifica MAIUSC, ALT o CTRL sono stati premuti contemporaneamente al tasto della console.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.

Costruttori

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

Inizializza una nuova istanza della struttura ConsoleKeyInfo utilizzando il carattere, il tasto della console e i tasti di modifica specificati.Initializes a new instance of the ConsoleKeyInfo structure using the specified character, console key, and modifier keys.

Proprietà

Key Key Key Key

Ottiene il tasto della console rappresentato dall'oggetto ConsoleKeyInfo corrente.Gets the console key represented by the current ConsoleKeyInfo object.

KeyChar KeyChar KeyChar KeyChar

Ottiene il carattere Unicode rappresentato dall'oggetto ConsoleKeyInfo corrente.Gets the Unicode character represented by the current ConsoleKeyInfo object.

Modifiers Modifiers Modifiers Modifiers

Ottiene una combinazione bit per bit di valori ConsoleModifiers che specifica uno o più tasti di modifica premuti contemporaneamente al tasto della console.Gets a bitwise combination of ConsoleModifiers values that specifies one or more modifier keys pressed simultaneously with the console key.

Metodi

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

Ottiene un valore che indica se l'oggetto ConsoleKeyInfo corrente è uguale all'oggetto ConsoleKeyInfo corrente.Gets a value indicating whether the specified ConsoleKeyInfo object is equal to the current ConsoleKeyInfo object.

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

Ottiene un valore che indica se l'oggetto specificato è uguale all'oggetto ConsoleKeyInfo corrente.Gets a value indicating whether the specified object is equal to the current ConsoleKeyInfo object.

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

Restituisce il codice hash per l'oggetto ConsoleKeyInfo corrente.Returns the hash code for the current ConsoleKeyInfo object.

Operatori

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

Indica se gli oggetti ConsoleKeyInfo specificati sono uguali.Indicates whether the specified ConsoleKeyInfo objects are equal.

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

Indica se gli oggetti ConsoleKeyInfo specificati non sono uguali.Indicates whether the specified ConsoleKeyInfo objects are not equal.

Si applica a

Vedi anche