ConsoleKeyInfo ConsoleKeyInfo ConsoleKeyInfo ConsoleKeyInfo Struct

定義

コンソール キーが表す文字や、Shift、Alt、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
継承
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れたコンソールキーに対応する定数と Unicode 文字 (存在する場合) を記述します。The ConsoleKeyInfo object describes the ConsoleKey constant and Unicode character, if any, that correspond to the pressed console key. またConsoleKeyInfo 、オブジェクトは、1つ以上の SHIFT ConsoleModifiers 、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 オブジェクトが表す Unicode 文字を取得します。Gets the Unicode character represented by the current ConsoleKeyInfo object.

Modifiers Modifiers Modifiers Modifiers

コンソール キーと同時に押される 1 つ以上の修飾子キーを指定する、ConsoleModifiers 値のビットごとの組み合わせを取得します。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.

適用対象

こちらもご覧ください