KeyPressEventArgs Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece dados para o evento KeyPress.
public ref class KeyPressEventArgs : EventArgs
[System.Runtime.InteropServices.ComVisible(true)]
public class KeyPressEventArgs : EventArgs
public class KeyPressEventArgs : EventArgs
[<System.Runtime.InteropServices.ComVisible(true)>]
type KeyPressEventArgs = class
inherit EventArgs
type KeyPressEventArgs = class
inherit EventArgs
Public Class KeyPressEventArgs
Inherits EventArgs
- Herança
- Atributos
Exemplos
O exemplo a seguir ilustra o uso das KeyPressEventArgs teclas de contagem conforme elas são pressionadas e para exibir os resultados após cada pressionamento de tecla. Handled é definido como true para impedir que o sistema operacional processe ainda mais a chave. O exemplo pressupõe um formulário com um TextBox colocado nele.
public ref class myKeyPressClass
{
private:
static long keyPressCount = 0;
static long backspacePressed = 0;
static long returnPressed = 0;
static long escPressed = 0;
TextBox^ textBox1;
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 = String::Concat(
backspacePressed, " backspaces pressed\r\n",
escPressed, " escapes pressed\r\n",
returnPressed, " returns pressed\r\n",
keyPressCount, " other keys pressed\r\n" );
ex->Handled = true;
}
};
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 ;
}
}
Public Class myKeyPressClass
Private Shared keyPressCount As Long = 0
Private Shared backspacePressed As Long = 0
Private Shared returnPressed As Long = 0
Private Shared escPressed As Long = 0
Private textBox1 As TextBox
Private Sub myKeyCounter(sender As Object, ex As KeyPressEventArgs)
Select Case ex.KeyChar
' Counts the backspaces.
Case ControlChars.Back
backspacePressed = backspacePressed + 1
' Counts the ENTER keys.
Case ControlChars.Lf
returnPressed = returnPressed + 1
' Counts the ESC keys.
Case Convert.ToChar(27)
escPressed = escPressed + 1
' Counts all other keys.
Case Else
keyPressCount = keyPressCount + 1
End Select
textBox1.Text = backspacePressed & " backspaces pressed" & _
ControlChars.Lf & ControlChars.Cr & escPressed & _
" escapes pressed" & ControlChars.CrLf & returnPressed & _
" returns pressed" & ControlChars.CrLf & keyPressCount & _
" other keys pressed" & ControlChars.CrLf
ex.Handled = True
End Sub
End Class
Você deve criar uma nova instância dessa classe. Você também deve definir o manipulador de eventos. Você pode fazer isso no construtor de sua classe.
public:
myKeyPressClass^ myKeyPressHandler;
Form1()
{
myKeyPressHandler = gcnew myKeyPressClass;
InitializeComponent();
textBox1->KeyPress += gcnew KeyPressEventHandler(
myKeyPressHandler, &myKeyPressClass::myKeyCounter );
}
myKeyPressClass myKeyPressHandler = new myKeyPressClass();
public Form1()
{
InitializeComponent();
textBox1.KeyPress += new KeyPressEventHandler(myKeyPressHandler.myKeyCounter);
}
Private myKeyPressHandler As New myKeyPressClass()
Public Sub New()
InitializeComponent()
AddHandler textBox1.KeyPress, AddressOf myKeyPressHandler.myKeyCounter
End Sub
Quando o evento especificado é gerado no controle, o método anexado é chamado e o aplicativo pode executar o código em resposta ao evento.
Comentários
Especifica KeyPressEventArgs o caractere que é composto quando o usuário pressiona uma tecla. Por exemplo, quando o usuário pressiona SHIFT + K, a KeyChar propriedade retorna um K maiúsculo.
Um KeyPress evento ocorre quando o usuário pressiona uma tecla. Dois eventos que estão intimamente relacionados ao KeyPress evento são KeyUp e KeyDown. O KeyDown evento precede cada KeyPress evento quando o usuário pressiona uma tecla e um KeyUp evento ocorre quando o usuário libera uma tecla. Quando o usuário segura uma chave, ocorrem duplicados KeyDown e KeyPress eventos sempre que o caractere se repete. Um KeyUp evento é gerado após a versão.
Com cada KeyPress evento, um KeyPressEventArgs é passado. Um KeyEventArgs é passado com cada KeyDown evento.KeyUp Especifica KeyEventArgs se as teclas modificadoras (CTRL, SHIFT ou ALT) foram pressionadas junto com outra tecla. (Essas informações do modificador também podem ser obtidas por meio da ModifierKeys propriedade da Control classe.)
Defina Handled para true cancelar o KeyPress evento. Isso impede que o controle processe a tecla.
Observação
Alguns controles processarão determinados traços de chave.KeyDown Por exemplo, RichTextBox processa a chave Enter antes KeyPress de ser chamada. Nesses casos, você não pode cancelar o KeyPress evento e deve cancelar o traço da KeyDown chave.
Para obter informações sobre o modelo de evento, consulte Manipulando e levantando eventos.
Construtores
| Nome | Description |
|---|---|
| KeyPressEventArgs(Char) |
Inicializa uma nova instância da classe KeyPressEventArgs. |
Propriedades
| Nome | Description |
|---|---|
| Handled |
Obtém ou define um valor que indica se o KeyPress evento foi manipulado. |
| KeyChar |
Obtém ou define o caractere correspondente à tecla pressionada. |
Métodos
| Nome | Description |
|---|---|
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
| ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |