KeyPressEventArgs KeyPressEventArgs KeyPressEventArgs KeyPressEventArgs Class

定義

KeyPress イベントのデータを提供します。Provides data for the KeyPress event.

public ref class KeyPressEventArgs : EventArgs
[System.Runtime.InteropServices.ComVisible(true)]
public class KeyPressEventArgs : EventArgs
type KeyPressEventArgs = class
    inherit EventArgs
Public Class KeyPressEventArgs
Inherits EventArgs
継承
KeyPressEventArgsKeyPressEventArgsKeyPressEventArgsKeyPressEventArgs
属性

次の例では、 KeyPressEventArgsを使用して、押されたキーをカウントし、各キーを押すたびに結果を表示する方法を示します。The following example illustrates using the KeyPressEventArgs to count keys as they are pressed and to display the results after each key press. Handled次に、を true に設定して、オペレーティングシステムがキーをさらに処理しないようにします。Handled is then set to true to keep the operating system from further processing the key. この例では、フォームにTextBoxが配置されたフォームが想定されています。The example assumes a form with a TextBox placed on it.

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

このクラスの新しいインスタンスを作成する必要があります。You must create a new instance of this class. また、イベントハンドラーも設定する必要があります。You must also set the event handler. これは、クラスのコンストラクターで行うことができます。You can do this in the constructor for your class.

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

コントロールで指定されたイベントが発生すると、添付されたメソッドが呼び出され、アプリケーションはイベントに応答してコードを実行できます。When the specified event is raised in the control, the attached method is called and the application can execute code in response to the event.

注釈

KeyPressEventArgs 、ユーザーがキーを押したときに構成される文字を指定します。A KeyPressEventArgs specifies the character that is composed when the user presses a key. たとえば、ユーザーが SHIFT + K キーを押すと、 KeyCharプロパティは大文字の k を返します。For example, when the user presses SHIFT + K, the KeyChar property returns an uppercase K.

イベントKeyPressは、ユーザーがキーを押したときに発生します。A KeyPress event occurs when the user presses a key. KeyPressイベントに密接に関連する2つのイベントKeyUpKeyDown、とです。Two events that are closely related to the KeyPress event are KeyUp and KeyDown. イベントKeyDownは、ユーザー KeyPressがキー KeyUpを押したときに各イベントの前に発生し、ユーザーがキーを離すとイベントが発生します。The KeyDown event precedes each KeyPress event when the user presses a key, and a KeyUp event occurs when the user releases a key. ユーザーがキーを押すと、文字がKeyDown繰り返さKeyPressれるたびに重複したイベントが発生します。When the user holds down a key, duplicate KeyDown and KeyPress events occur each time the character repeats. リリースKeyUp時に1つのイベントが生成されます。One KeyUp event is generated upon release.

KeyPress イベントKeyPressEventArgsでは、が渡されます。With each KeyPress event, a KeyPressEventArgs is passed. KeyEventArgs KeyDownKeyUp各イベントと共に渡されます。A KeyEventArgs is passed with each KeyDown and KeyUp event. KeyEventArgs 、任意の修飾子キー (CTRL、SHIFT、または ALT) を別のキーと共に押すかどうかを指定します。A KeyEventArgs specifies whether any modifier keys (CTRL, SHIFT, or ALT) were pressed along with another key. (この修飾子情報は、 ModifierKeys Controlクラスのプロパティを使用して取得することもできます)。(This modifier information can also be obtained through the ModifierKeys property of the Control class.)

イベントHandledtrue取り消すにはKeyPress 、をに設定します。Set Handled to true to cancel the KeyPress event. これにより、コントロールはキー押下を処理し続けます。This keeps the control from processing the key press.

注意

一部のコントロールでは、の特定KeyDownのキーストロークが処理されます。Some controls will process certain key strokes on KeyDown. たとえば、はRichTextBox 、が呼び出される前KeyPressに Enter キーを処理します。For example, RichTextBox processes the Enter key before KeyPress is called. このような場合、 KeyPressイベントをキャンセルすることはできません。代わりに、からKeyDownキーストロークを取り消す必要があります。In such cases, you cannot cancel the KeyPress event, and must cancel the key stroke from KeyDown instead.

イベントモデルの詳細については、「イベントの処理と発生」を参照してください。For information about the event model, see Handling and Raising Events.

コンストラクター

KeyPressEventArgs(Char) KeyPressEventArgs(Char) KeyPressEventArgs(Char) KeyPressEventArgs(Char)

KeyPressEventArgs クラスの新しいインスタンスを初期化します。Initializes a new instance of the KeyPressEventArgs class.

プロパティ

Handled Handled Handled Handled

KeyPress イベントが処理されたかどうかを示す値を取得または設定します。Gets or sets a value indicating whether the KeyPress event was handled.

KeyChar KeyChar KeyChar KeyChar

押されたキーに対応する文字を取得または設定します。Gets or sets the character corresponding to the key pressed.

メソッド

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)

適用対象

こちらもご覧ください