KeyPressEventArgs.KeyChar Propriedade
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.
Obtém ou define o caractere que corresponde à tecla pressionada.
public:
property char KeyChar { char get(); };
public:
property char KeyChar { char get(); void set(char value); };
public char KeyChar { get; }
public char KeyChar { get; set; }
member this.KeyChar : char
member this.KeyChar : char with get, set
Public ReadOnly Property KeyChar As Char
Public Property KeyChar As Char
Valor da propriedade
O caractere ASCII composto. Por exemplo, se o usuário pressionar SHIFT+K, essa propriedade retornará um K maiúsculo.
Exemplos
O exemplo a seguir cria um TextBox controle. O keypressed
método usa a KeyChar propriedade para verificar se a tecla ENTER foi pressionada. Se a tecla ENTER for pressionada, a Handled propriedade será definida como true
, o que indica que o evento é manipulado.
#using <System.dll>
#using <System.Drawing.dll>
#using <System.Windows.Forms.dll>
using namespace System;
using namespace System::Windows::Forms;
public ref class Form1: public Form
{
public:
Form1()
{
// Create a TextBox control.
TextBox^ tb = gcnew TextBox;
this->Controls->Add( tb );
tb->KeyPress += gcnew KeyPressEventHandler( this, &Form1::keypressed );
}
private:
void keypressed( Object^ /*o*/, KeyPressEventArgs^ e )
{
// The keypressed method uses the KeyChar property to check
// whether the ENTER key is pressed.
// If the ENTER key is pressed, the Handled property is set to true,
// to indicate the event is handled.
if ( e->KeyChar == (char)13 )
e->Handled = true;
}
};
int main()
{
Application::Run( gcnew Form1 );
}
using System;
using System.Windows.Forms;
public class Form1: Form
{
public Form1()
{
// Create a TextBox control.
TextBox tb = new TextBox();
this.Controls.Add(tb);
tb.KeyPress += new KeyPressEventHandler(keypressed);
}
private void keypressed(Object o, KeyPressEventArgs e)
{
// The keypressed method uses the KeyChar property to check
// whether the ENTER key is pressed.
// If the ENTER key is pressed, the Handled property is set to true,
// to indicate the event is handled.
if (e.KeyChar == (char)Keys.Return)
{
e.Handled = true;
}
}
public static void Main()
{
Application.Run(new Form1());
}
}
Imports System.Windows.Forms
Public Class Form1
Inherits Form
Public Sub New()
' Create a TextBox control.
Dim tb As New TextBox()
Me.Controls.Add(tb)
AddHandler tb.KeyPress, AddressOf keypressed
End Sub
Private Sub keypressed(ByVal o As [Object], ByVal e As KeyPressEventArgs)
' The keypressed method uses the KeyChar property to check
' whether the ENTER key is pressed.
' If the ENTER key is pressed, the Handled property is set to true,
' to indicate the event is handled.
If e.KeyChar = Microsoft.VisualBasic.ChrW(Keys.Return) Then
e.Handled = True
End If
End Sub
Public Shared Sub Main()
Application.Run(New Form1())
End Sub
End Class
Comentários
Use a KeyChar propriedade para amostrar pressionamentos de teclas em tempo de execução e modificar pressionamentos de teclas em circunstâncias especiais de tempo de execução. Por exemplo, você pode usar KeyChar para desabilitar teclas não numéricas quando o usuário inserir um CEP, alterar todas as teclas alfabéticas para maiúsculas em um campo de entrada de dados ou monitorar o teclado ou outro dispositivo de entrada de chave para combinações de teclas específicas.
Você pode obter ou definir as seguintes chaves:
a-z, A-Z.
CTRL.
Marcas de pontuação.
Teclas numéricas, tanto na parte superior do teclado quanto no teclado numérico.
ENTRAR.
Não é possível obter ou definir as seguintes chaves:
A tecla TAB.
INSERT e DELETE.
CASA.
FINAL.
PAGE UP E PAGE DOWN.
F1-F2.
ALT.
Teclas de direção.
Observação
Para obter informações sobre como detectar qualquer uma das chaves que não são de caracteres mencionadas acima, consulte a KeyEventArgs classe.