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

Classe KeyPressEventArgs

fornisce i dati per KeyPress evento.

System.Object
  System.EventArgs
    System.Windows.Forms.KeyPressEventArgs

Spazio dei nomi:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)
[ComVisibleAttribute(true)]
public class KeyPressEventArgs : EventArgs

Il tipo KeyPressEventArgs espone i seguenti membri.

  NomeDescrizione
Metodo pubblicoKeyPressEventArgsInizializza una nuova istanza di KeyPressEventArgs classe.
In alto
  NomeDescrizione
Proprietà pubblicaHandledOttiene o imposta un valore che indica se KeyPress l'evento è stato gestito.
Proprietà pubblicaKeyCharOttiene o imposta il carattere corrispondente alla chiave premuto.
In alto
  NomeDescrizione
Metodo pubblicoEquals(Object) Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object)
Metodo protettoFinalize Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulizia prima che l'oggetto stesso venga reclamato dalla procedura di Garbage Collection. (Ereditato da Object)
Metodo pubblicoGetHashCodeFunge da funzione hash per un determinato tipo. (Ereditato da Object)
Metodo pubblicoGetTypeOttiene l'oggetto Type dell'istanza corrente. (Ereditato da Object)
Metodo protettoMemberwiseCloneConsente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object)
Metodo pubblicoToString Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object)
In alto

In KeyPressEventArgs specifica il carattere che si compone quando l'utente preme un tasto. Ad esempio, quando l'utente preme MAIUSC + K utente, KeyChar la proprietà restituisce una maiuscola K.

In KeyPress l'evento si verifica quando l'utente preme un tasto. Due eventi che sono strettamente correlati a KeyPress l'evento viene KeyUp e KeyDown. KeyDown l'evento precede ogni KeyPress evento quando l'utente preme un tasto e a KeyUp l'evento si verifica quando l'utente rilascia un tasto. Quando l'utente premuto un tasto, duplicare KeyDown e KeyPress si verificano gli eventi ogni volta le ripetizioni del carattere. uno KeyUp l'evento viene generato sulla versione.

Oltre a ognuno KeyPress evento, a KeyPressEventArgs viene passato. In KeyEventArgs viene passato a ciascuno KeyDown e KeyUp evento. In KeyEventArgs specifica se i tasti di modifica (CTRL, MAIUSC, ALT o) sono stati rilevati con un'altra chiave. (Queste informazioni del modificatore possono essere ottenute con ModifierKeys proprietà di Control classe).

set Handled in true per annullare KeyPress evento. In questo modo il controllo dall'elaborazione la stampa principale.

NotaNota

Alcuni controlli elaboreranno determinati aspetti principali rispetto a KeyDown. Ad esempio, RichTextBox elabora prima la chiave leave KeyPress viene chiamato. In tali casi, non è possibile annullare KeyPress l'evento e deve annullare il tratto principale da KeyDown anziché.

Per informazioni sul modello eventi, vedere Eventi e delegati.

Nell'esempio seguente viene illustrato l'utilizzo di KeyPressEventArgs per contare le chiavi come premuti e visualizzare i risultati dopo ogni stampa principale. Handled viene quindi impostata su true per mantenere il sistema operativo dall'ulteriore elaborazione la chiave. Nell'esempio si presuppone l'esistenza di un form contenente un oggetto TextBox posizionato su.


public class myKeyPressClass 
 {
     static long keyPressCount = 0 ;
     static long backspacePressed =  0;
     static long returnPressed = 0 ;
     static long escPressed = 0 ;
     private TextBox textBox1 = new TextBox();
     private void myKeyCounter(object sender, KeyPressEventArgs ex)
     {
     switch(ex.KeyChar)
     {
             // Counts the backspaces.
         case '\b':
         backspacePressed = backspacePressed + 1;
         break ;
             // Counts the ENTER keys.
         case '\r':
         returnPressed = returnPressed + 1 ;
         break ;
             // Counts the ESC keys.  
         case (char)27:
         escPressed = escPressed + 1 ;
         break ;
             // Counts all other keys.
         default:
         keyPressCount = keyPressCount + 1 ;
         break;
     }

     textBox1.Text = 
         backspacePressed + " backspaces pressed\r\n" + 
         escPressed + " escapes pressed\r\n" +
         returnPressed + " returns pressed\r\n" +
         keyPressCount + " other keys pressed\r\n" ;
     ex.Handled = true ;
     }
 }


È necessario creare una nuova istanza della classe. È inoltre necessario impostare il gestore eventi. È possibile eseguire questa operazione nel costruttore della classe.


myKeyPressClass myKeyPressHandler = new myKeyPressClass();
public Form1()
{
     InitializeComponent();

     textBox1.KeyPress += new KeyPressEventHandler(myKeyPressHandler.myKeyCounter);
}


Quando si verifica l'evento specificato viene generato nel controllo, il metodo associato viene chiamato e l'applicazione può eseguire codice in risposta all'evento.

.NET Framework

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

.NET Framework Client Profile

Supportato in: 4, 3.5 SP1

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.
Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.
Il documento è risultato utile?
(1500 caratteri rimanenti)

Aggiunte alla community

AGGIUNGI
© 2013 Microsoft. Tutti i diritti riservati.