KeyPressEventArgs Sınıf

Tanım

KeyPress olayı için veriler sağlar.

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
Devralma
KeyPressEventArgs
Öznitelikler

Örnekler

Aşağıdaki örnekte, tuşlara basıldığında saymak ve her tuşa basıldıktan sonra sonuçları görüntülemek için komutunun kullanılması KeyPressEventArgs gösterilmektedir. Handled daha sonra işletim sisteminin anahtarı daha fazla işlemesini engel olmak için true olarak ayarlanır. Örnekte, üzerine yerleştirilen bir TextBox formun olduğu varsayılır.

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

Bu sınıfın yeni bir örneğini oluşturmanız gerekir. Olay işleyicisini de ayarlamanız gerekir. Bunu sınıfınızın oluşturucusunda yapabilirsiniz.

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

Denetimde belirtilen olay tetiklendiğinde, ekli yöntem çağrılır ve uygulama olaya yanıt olarak kod yürütebilir.

Açıklamalar

A KeyPressEventArgs , kullanıcı bir tuşa bastığında oluşturulan karakteri belirtir. Örneğin, kullanıcı SHIFT + K tuşlarına bastığında KeyChar , özelliği büyük harf K döndürür.

KeyPress Kullanıcı bir tuşa bastığında bir olay oluşur. Olayla yakından ilişkili KeyPress iki olay ve KeyDown'tirKeyUp. Olay KeyDown , kullanıcı bir tuşa bastığında her KeyPress olaydan önce gelir ve kullanıcı bir anahtar serbest bıraktığında bir KeyUp olay gerçekleşir. Kullanıcı bir anahtarı basılı tuttuğunda, karakter her yinelendiğinde yineleme KeyDown ve KeyPress olaylar gerçekleşir. Bir KeyUp olay yayınlandığında oluşturulur.

Her KeyPress olayda bir KeyPressEventArgs geçirilir. her KeyDown biri ve KeyUp olayıyla birlikte bir KeyEventArgs geçirilir. A KeyEventArgs , başka bir tuşla birlikte herhangi bir değiştirici tuşa (CTRL, SHIFT veya ALT) basılıp basılmayacağını belirtir. (Bu değiştirici bilgileri, sınıfının özelliği Control aracılığıyla ModifierKeys da alınabilir.)

true Olayı iptal KeyPress etmek için olarak ayarlayınHandled. Bu, denetimin tuş basımını işlemesini engeller.

Not

Bazı denetimler üzerinde KeyDownbelirli tuş vuruşlarını işler. Örneğin, RichTextBox önce KeyPress Enter anahtarını işler. Böyle durumlarda, olayı iptal KeyPress edemezsiniz ve bunun yerine tuş vuruşunu KeyDown iptal etmelisiniz.

Olay modeli hakkında bilgi için bkz. Olayları İşleme ve Oluşturma.

Oluşturucular

KeyPressEventArgs(Char)

KeyPressEventArgs sınıfının yeni bir örneğini başlatır.

Özellikler

Handled

Olayın işlenip işlenmediğini KeyPress belirten bir değer alır veya ayarlar.

KeyChar

Basılan tuşa karşılık gelen karakteri alır veya ayarlar.

Yöntemler

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır

Ayrıca bkz.