Esporta (0) Stampa
Espandi tutto
Il presente articolo è stato tradotto automaticamente. Passare il puntatore sulle frasi nell'articolo per visualizzare il testo originale. Ulteriori informazioni.
Traduzione
Originale
Questo argomento non è stato ancora valutato - Valuta questo argomento

Metodo Console.ReadKey

Consente di ottenere il carattere successivo o il tasto funzione premuto dall'utente. Il tasto premuto viene visualizzato nella finestra della console.

Spazio dei nomi:  System
Assembly:  mscorlib (in mscorlib.dll)
[HostProtectionAttribute(SecurityAction.LinkDemand, UI = true)]
public static ConsoleKeyInfo ReadKey()

Valore restituito

Tipo: System.ConsoleKeyInfo
Oggetto ConsoleKeyInfo che descrive la costante ConsoleKey e il carattere Unicode, se presente, che corrispondono al tasto premuto sulla console. L'oggetto ConsoleKeyInfo descrive inoltre, in una combinazione bit per bit di valori ConsoleModifiers, se sono stati premuti contemporaneamente al tasto della console uno o più tasti di modifica MAIUSC, ALT o CTRL.
EccezioneCondizione
InvalidOperationException

La proprietà In viene reindirizzata da un flusso diverso da quello della console.

Il metodo ReadKey rimane in attesa, vale a dire si blocca sul thread di esecuzione del metodo ReadKey fino a quando viene premuto un carattere o un tasto funzione. Un carattere o un tasto funzione può essere combinazione con gli uno o più tasti di modifica ALT, il tasto CTRL, o di navigazione. Tuttavia, la pressione di un solo tasto di modifica non comporterà la restituzione di un valore da parte del metodo ReadKey.

In base all'applicazione in uso, è possibile utilizzare il metodo ReadKey insieme alla proprietà KeyAvailable.

Il metodo ReadKey consente di leggere dalla tastiera anche se l'input standard viene reindirizzato a un file mediante il metodo SetIn.

NotaNota

L'attributo HostProtectionAttribute applicato a questo tipo o membro dispone del seguente Resources valore della proprietà: UI. L'oggetto HostProtectionAttribute non influisce sulle applicazioni desktop, che in genere vengono avviate facendo doppio clic sull'icona, digitando un comando oppure immettendo un URL in un browser. Per ulteriori informazioni, vedere la classe HostProtectionAttribute o programmazione per SQL Server e attributi di protezione host.

Nell'esempio riportato di seguito viene illustrato il metodo ReadKey senza parametri.


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 


.NET Framework

Supportato in: 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supportato in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (ruoli di base del server non supportati), Windows Server 2008 R2 (ruoli di base del server supportati con SP1 o versione successiva, Itanium non supportato)

.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.
Il documento è risultato utile?
(1500 caratteri rimanenti)
Grazie per i commenti inviati.

Aggiunte alla community

AGGIUNGI
Mostra:
© 2014 Microsoft. Tutti i diritti riservati.