ConsoleModifiers 列挙体
この列挙体には、メンバ値のビットごとの組み合わせを可能にする FlagsAttribute 属性が含まれています。
名前空間: Systemアセンブリ: mscorlib (mscorlib.dll 内)

<SerializableAttribute> _ <FlagsAttribute> _ Public Enumeration ConsoleModifiers



キーを読み取り、1 つ以上の修飾子キーが押されたかどうかを判断するコード例を次に示します。
' This example demonstrates the Console.ReadKey() method Imports System Imports System.Text Imports Microsoft.VisualBasic Class Sample Public Shared Sub Main() Dim cki As ConsoleKeyInfo ' 0 1 2 3 4 5 6 ' 123456789012345678901234567890123456879012345678901234567890 Dim m1 As String = "This example discovers the console and modifier keys " & _ "that you press." & vbCrLf Dim m2 As String = "Press any combination of CTL, ALT, and SHIFT modifier keys, " & _ "and a console key." & vbCrLf & _ "Press the Escape (Esc) key to quit: " Dim m3 As String = "You pressed " Dim m4 As String = " (character '{0}')." Dim sb As New StringBuilder() ' ' The Console.TreatControlCAsInput property prevents this example from ' ending if you press CTL+C, however all other operating system keys and ' shortcuts, such as ALT+TAB or the Windows Logo key, are still in effect. ' Console.TreatControlCAsInput = True Console.WriteLine(m1) Do Console.WriteLine(m2) sb.Length = 0 cki = Console.ReadKey(True) sb.Append(m3) If cki.Modifiers <> 0 Then If(cki.Modifiers And ConsoleModifiers.Alt) <> 0 Then sb.Append("ALT+") End If If(cki.Modifiers And ConsoleModifiers.Shift) <> 0 Then sb.Append("SHIFT+") End If If(cki.Modifiers And ConsoleModifiers.Control) <> 0 Then sb.Append("CTL+") End If End If sb.Append(cki.Key.ToString()) sb.AppendFormat(m4, cki.KeyChar) sb.AppendLine().AppendLine() Console.WriteLine(sb.ToString()) Loop While cki.Key <> ConsoleKey.Escape End Sub 'Main ' Note: This example requires the Escape (Esc) key. End Class 'Sample ' 'This example produces results similar to following text: ' 'This example discovers the console and modifier keys that you press. ' 'Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. 'Press the Escape (Esc) key to quit: 'You pressed A (character 'a'). ' ' 'Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. 'Press the Escape (Esc) key to quit: 'You pressed SHIFT+A (character 'A'). ' ' 'Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. 'Press the Escape (Esc) key to quit: 'You pressed ALT+SHIFT+CTL+A (character ' '). ' ' 'Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. 'Press the Escape (Esc) key to quit: 'You pressed Escape (character '?'). '
// This example demonstrates the Console.ReadKey() method using System; using System.Text; class Sample { public static void Main() { ConsoleKeyInfo cki; // 0 1 2 3 4 5 6 // 123456789012345678901234567890123456879012345678901234567890 String m1 = "This example discovers the console and modifier keys " + "that you press.\n"; String m2 = "Press any combination of CTL, ALT, and SHIFT modifier keys, " + "and a console key.\nPress the Escape (Esc) key to quit: "; String m3 = "You pressed "; String m4 = " (character '{0}')."; StringBuilder sb = new StringBuilder(); // // The Console.TreatControlCAsInput property prevents this example from // ending if you press CTL+C, however all other operating system keys and // shortcuts, such as ALT+TAB or the Windows Logo key, are still in effect. // Console.TreatControlCAsInput = true; Console.WriteLine(m1); do { Console.WriteLine(m2); sb.Length = 0; cki = Console.ReadKey(true); sb.Append(m3); if (cki.Modifiers != 0) { if ((cki.Modifiers & ConsoleModifiers.Alt) != 0) sb.Append("ALT+"); if ((cki.Modifiers & ConsoleModifiers.Shift) != 0) sb.Append("SHIFT+"); if ((cki.Modifiers & ConsoleModifiers.Control) != 0) sb.Append("CTL+"); } sb.Append(cki.Key.ToString()); sb.AppendFormat(m4, cki.KeyChar); sb.AppendLine().AppendLine(); Console.WriteLine(sb.ToString()); } while (cki.Key != ConsoleKey.Escape); // Note: This example requires the Escape (Esc) key. } } /* This example produces results similar to following text: This example discovers the console and modifier keys that you press. Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. Press the Escape (Esc) key to quit: You pressed A (character 'a'). Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. Press the Escape (Esc) key to quit: You pressed SHIFT+A (character 'A'). Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. Press the Escape (Esc) key to quit: You pressed ALT+SHIFT+CTL+A (character ' '). Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. Press the Escape (Esc) key to quit: You pressed Escape (character '?'). */
// This example demonstrates the Console.ReadKey() method using namespace System; using namespace System::Text; int main() { ConsoleKeyInfo cki; // 0 1 2 3 4 5 6 // 123456789012345678901234567890123456879012345678901234567890 String^ m1 = "This example discovers the console and modifier keys " "that you press.\n"; String^ m2 = "Press any combination of CTL, ALT, and SHIFT modifier keys, " "and a console key.\nPress the Escape (Esc) key to quit: "; String^ m3 = "You pressed "; String^ m4 = " (character '{0}')."; StringBuilder^ sb = gcnew StringBuilder; // // The Console.TreatControlCAsInput property prevents this example from // ending if you press CTL+C, however all other operating system keys and // shortcuts, such as ALT+TAB or the Windows Logo key, are still in effect. // Console::TreatControlCAsInput = true; Console::WriteLine( m1 ); do { Console::WriteLine( m2 ); sb->Length = 0; cki = Console::ReadKey( true ); sb->Append( m3 ); if ( (int)cki.Modifiers ) { if ( (int)(cki.Modifiers & ConsoleModifiers::Alt) ) sb->Append( "ALT+" ); if ( (int)(cki.Modifiers & ConsoleModifiers::Shift) ) sb->Append( "SHIFT+" ); if ( (int)(cki.Modifiers & ConsoleModifiers::Control) ) sb->Append( "CTL+" ); } sb->Append( cki.Key.ToString() ); sb->AppendFormat( m4, cki.KeyChar ); sb->AppendLine()->AppendLine(); Console::WriteLine( sb ); } while ( cki.Key != ConsoleKey::Escape ); // Note: This example requires the Escape (Esc) key. } /* This example produces results similar to following text: This example discovers the console and modifier keys that you press. Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. Press the Escape (Esc) key to quit: You pressed A (character 'a'). Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. Press the Escape (Esc) key to quit: You pressed SHIFT+A (character 'A'). Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. Press the Escape (Esc) key to quit: You pressed ALT+SHIFT+CTL+A (character ' '). Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. Press the Escape (Esc) key to quit: You pressed Escape (character '?'). */
// This example demonstrates the Console.ReadKey() method import System.*; import System.Text.*; class Sample { public static void main(String[] args) { ConsoleKeyInfo cki; // 0 1 2 3 4 5 6 // 123456789012345678901234567890123456879012345678901234567890 String m1 = "This example discovers the console and modifier keys " + "that you press.\n"; String m2 = "Press any combination of CTL, ALT, and SHIFT modifier keys, " + "and a console key.\nPress the Escape (Esc) key to quit: "; String m3 = "You pressed "; String m4 = " (character '{0}')."; StringBuilder sb = new StringBuilder(); // // The Console.TreatControlCAsInput property prevents this example from // ending if you press CTL+C, however all other operating system keys and // shortcuts, such as ALT+TAB or the Windows Logo key, are still in // effect. // Console.set_TreatControlCAsInput(true); Console.WriteLine(m1); do { Console.WriteLine(m2); sb.set_Length(0); cki = Console.ReadKey(true); sb.Append(m3); if (!(cki.get_Modifiers().Equals((Int32)0))) { if (!((cki.get_Modifiers() & ConsoleModifiers.Alt).ToString(). Equals(Convert.ToString(0)))) { sb.Append("ALT+"); } if (!((cki.get_Modifiers() & ConsoleModifiers.Shift).ToString(). Equals(Convert.ToString(0)))) { sb.Append("SHIFT+"); } if (!((cki.get_Modifiers() & ConsoleModifiers.Control).ToString(). Equals(Convert.ToString(0)))) { sb.Append("CTL+"); } } sb.Append(cki.get_Key().ToString()); sb.AppendFormat(m4, (System.Char)cki.get_KeyChar()); sb.AppendLine().AppendLine(); Console.WriteLine(sb.ToString()); } while (!(cki.get_Key().Equals(ConsoleKey.Escape))); // Note: This example requires the Escape (Esc) key. } //main } //Sample /* This example produces results similar to following text: This example discovers the console and modifier keys that you press. Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. Press the Escape (Esc) key to quit: You pressed A (character 'a'). Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. Press the Escape (Esc) key to quit: You pressed SHIFT+A (character 'A'). Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. Press the Escape (Esc) key to quit: You pressed ALT+SHIFT+CTL+A (character ' '). Press any combination of CTL, ALT, and SHIFT modifier keys, and a console key. Press the Escape (Esc) key to quit: You pressed Escape (character '?'). */

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- ConsoleModifiers 列挙体のページへのリンク