KeyPressEventArgs.KeyChar Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera lub ustawia znak odpowiadający naciśnięciu klawisza.
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
Wartość właściwości
Skomponowany znak ASCII. Jeśli na przykład użytkownik naciska klawisze SHIFT + K, ta właściwość zwraca wielkie litery K.
Przykłady
Poniższy przykład tworzy kontrolkę TextBox . Metoda keypressed
używa właściwości w KeyChar celu sprawdzenia, czy naciśnięcie klawisza ENTER. W przypadku naciśnięcia Handled klawisza ENTER właściwość jest ustawiona na true
, która wskazuje, że zdarzenie jest obsługiwane.
#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
Uwagi
Użyj właściwości do KeyChar próbkowania naciśnięć klawiszy w czasie wykonywania i do modyfikowania naciśnięć klawiszy w specjalnych okolicznościach czasu wykonywania. Na przykład można użyć KeyChar polecenia , aby wyłączyć nieliczbowe naciśnięcie klawiszy, gdy użytkownik wprowadzi kod pocztowy, zmień wszystkie alfabetyczne naciśnięcia klawiszy na wielkie litery w polu wprowadzania danych lub monitoruj klawiaturę lub inne urządzenie wejściowe klawiszy w celu uzyskania określonych kombinacji klawiszy.
Możesz pobrać lub ustawić następujące klucze:
a-z, A-Z.
CTRL.
Znaki interpunkcyjne.
Klawisze liczbowe, zarówno w górnej części klawiatury, jak i na klawiaturze numerycznej.
WPROWADŹ.
Nie można pobrać ani ustawić następujących kluczy:
Klawisz TAB.
WSTAW i USUŃ.
W: STRONA GŁÓWNA.
KOŃCU.
STRONA W GÓRĘ I W DÓŁ.
F1-F2.
ALT.
Klawisze strzałek.
Uwaga
Aby uzyskać informacje na temat wykrywania dowolnego z kluczy innych niż znaki wymienione powyżej, zobacz klasę KeyEventArgs .