クラスKeyStroke

すべての実装されたインタフェース:
Serializable

public class KeyStroke extends AWTKeyStroke
KeyStrokeは、キーボードまたは同等の入力デバイスのキー・アクションを表します。 KeyStrokeは、KeyEventのKEY_PRESSEDおよびKEY_RELEASEDと同様に、特定のキーを押す、または放す動作のみに対応させることも、KeyEventのKEY_TYPEDと同様に特定のJava文字のキーボード入力に対応させることもできます。 どちらの場合も、修飾子(alt、shift、control、meta、altGraphまたはそれらの組合せ)を指定できます。これらの修飾子は、完全一致のアクション時に存在する必要があります。

KeyStrokeは、ハイレベル(意味上)のアクション・イベントを定義するために使用されます。 すべてのキー・ストロークをトラップし、関係のないものを破棄する代わりに、注目すべきキー・ストロークはそれらが登録されているコンポーネントで自動的にアクションを起こします。

KeyStrokeは不変であり、一意であることが想定されています。 クライアント・コードではKeyStrokeを作成できません。かわりに、getKeyStrokeのバリアントを使用する必要があります。 これらのファクトリ・メソッドによって、インスタンスのキャッシュと共有を効率的に行うようにKeyStrokeを実装できます。

警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4では、すべてのJavaBeansの長期ストレージのサポートがjava.beansパッケージに追加されました。 XMLEncoderを参照してください。

導入されたバージョン:
1.2
関連項目:
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    static KeyStroke
    getKeyStroke(char keyChar)
    指定された文字のKEY_TYPEDイベントを表すKeyStrokeの共有インスタンスを返します。
    static KeyStroke
    getKeyStroke(char keyChar, boolean onKeyRelease)
    非推奨。
    getKeyStroke(char)の使用
    static KeyStroke
    getKeyStroke(int keyCode, int modifiers)
    数値キー・コードおよび修飾子のセットが指定されると、KeyStrokeの共有インスタンスを返します。
    static KeyStroke
    getKeyStroke(int keyCode, int modifiers, boolean onKeyRelease)
    数値キー・コードおよび修飾子のセットが指定されると、KeyStrokeの共有インスタンスを返します。このインスタンスは、キーを押したときまたは放したときにキーがアクティブになるかどうかを示します。
    static KeyStroke
    getKeyStroke(Character keyChar, int modifiers)
    指定されたCharacterオブジェクトと修飾子のセットのKEY_TYPEDイベントを表すKeyStrokeの共有インスタンスを返します。
    static KeyStroke
    文字列の構文を解析し、KeyStrokeを返します。
    static KeyStroke
    指定されたKeyEventを生成したストロークを表すKeyStrokeを返します。

    クラスで宣言されたメソッド AWTKeyStroke

    equals, getAWTKeyStroke, getAWTKeyStroke, getAWTKeyStroke, getAWTKeyStroke, getAWTKeyStroke, getAWTKeyStrokeForEvent, getKeyChar, getKeyCode, getKeyEventType, getModifiers, hashCode, isOnKeyRelease, readResolve, registerSubclass, toString
    修飾子と型
    メソッド
    説明
    final boolean
    equals(Object anObject)
    このオブジェクトが指定されたオブジェクトと同じ場合にtrueを返します。
    getAWTKeyStroke(char keyChar)
    指定された文字のKEY_TYPEDイベントを表すAWTKeyStrokeの共有インスタンスを返します。
    getAWTKeyStroke(int keyCode, int modifiers)
    数値キー・コードと修飾子のセットを使用して、AWTKeyStrokeの共有インスタンスを返します。
    getAWTKeyStroke(int keyCode, int modifiers, boolean onKeyRelease)
    キーが押されたときと解放されたときのどちらでアクティブになるかを指定して、数値キー・コードと修飾子のセットを使用して、AWTKeyStrokeの共有インスタンスを返します。
    getAWTKeyStroke(Character keyChar, int modifiers)
    指定されたCharacterオブジェクトと修飾子のセットのKEY_TYPEDイベントを表すAWTKeyStrokeの共有インスタンスを返します。
    文字列を解析し、AWTKeyStrokeを返します。
    指定されたKeyEventを生成したストロークを表すAWTKeyStrokeを返します。
    final char
    このAWTKeyStrokeの文字を返します。
    final int
    このAWTKeyStrokeの数値キー・コードを返します。
    final int
    このAWTKeyStrokeに対応するKeyEventのタイプを返します。
    final int
    このAWTKeyStrokeの修飾キーを返します。
    int
    一意であると考えられるこのオブジェクトの数値を返します。この値は、ハッシュ表でインデックス値として使用できます。
    final boolean
    このAWTKeyStrokeがキー解放を表すかどうかを返します。
    protected Object
    このインスタンスに等しい、AWTKeyStrokeのキャッシュされたインスタンス(またはAWTKeyStrokeのサブクラス)を返します。
    protected static void
    registerSubclass(Class<?> subclass)
    非推奨。 
    このオブジェクトのプロパティを表示および識別する文字列を返します。

    クラスオブジェクトで宣言されたメソッド

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected Object
    このオブジェクトのコピーを作成して、返します。
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • メソッドの詳細

    • getKeyStroke

      public static KeyStroke getKeyStroke(char keyChar)
      指定された文字のKEY_TYPEDイベントを表すKeyStrokeの共有インスタンスを返します。
      パラメータ:
      keyChar - キーボード・キーの文字値
      戻り値:
      そのキーのKeyStrokeオブジェクト
    • getKeyStroke

      @Deprecated public static KeyStroke getKeyStroke(char keyChar, boolean onKeyRelease)
      非推奨。
      getKeyStroke(char)の使用
      キーを押したとき、または放したときにキーがアクティブになるかどうかを示す、KeyStrokeのインスタンスを返します。 このクラスに含まれるほかのファクトリ・メソッドと異なり、このメソッドが返すインスタンスは、必ずしもキャッシュへの書き込みや共有が行われるわけではありません。
      パラメータ:
      keyChar - キーボード・キーの文字値
      onKeyRelease - このKeyStrokeがキーを放す動作に対応する場合はtrue、そうでない場合はfalse
      戻り値:
      そのキーのKeyStrokeオブジェクト
    • getKeyStroke

      public static KeyStroke getKeyStroke(Character keyChar, int modifiers)
      指定されたCharacterオブジェクトと修飾子のセットのKEY_TYPEDイベントを表すKeyStrokeの共有インスタンスを返します。 最初のパラメータはchar型ではなくCharacter型のパラメータです。 これは、不注意によるgetKeyStroke(int keyCode, int modifiers)呼び出しとの競合を避けるためです。 修飾子は、次の組み合わせで構成されます。
      • java.awt.event.InputEvent.SHIFT_DOWN_MASK
      • java.awt.event.InputEvent.CTRL_DOWN_MASK
      • java.awt.event.InputEvent.META_DOWN_MASK
      • java.awt.event.InputEvent.ALT_DOWN_MASK
      • java.awt.event.InputEvent.ALT_GRAPH_DOWN_MASK
      次に示す古い修飾子も使用できますが、これらは_DOWN_修飾子にマッピングされます。
      • java.awt.event.InputEvent.SHIFT_MASK
      • java.awt.event.InputEvent.CTRL_MASK
      • java.awt.event.InputEvent.META_MASK
      • java.awt.event.InputEvent.ALT_MASK
      • java.awt.event.InputEvent.ALT_GRAPH_MASK
      これらも使用できますが、これらは_DOWN_修飾子にマッピングされます。 これらの数字はすべて異なる2の累乗であるため、それらの組み合わせは各ビットが別々の修飾キーを表す整数です。 修飾子を指定しない場合は、0を使います。
      パラメータ:
      keyChar - キーボード文字のCharacterオブジェクト
      modifiers - 任意の修飾子のビット単位の論理和の組み合わせ
      戻り値:
      そのキーのKeyStrokeオブジェクト
      スロー:
      IllegalArgumentException - keyCharがnullの場合
      導入されたバージョン:
      1.3
      関連項目:
    • getKeyStroke

      public static KeyStroke getKeyStroke(int keyCode, int modifiers, boolean onKeyRelease)
      数値キー・コードおよび修飾子のセットが指定されると、KeyStrokeの共有インスタンスを返します。このインスタンスは、キーを押したときまたは放したときにキーがアクティブになるかどうかを示します。

      java.awt.event.KeyEventで定義される「仮想キー」定数は、キー・コードを指定するために使用できます。 たとえば:

      • java.awt.event.KeyEvent.VK_ENTER
      • java.awt.event.KeyEvent.VK_TAB
      • java.awt.event.KeyEvent.VK_SPACE
      または、java.awt.event.KeyEvent.getExtendedKeyCodeForCharを呼び出すことで、キー・コードを取得することもできます。 修飾子は、次の組み合わせで構成されます。
      • java.awt.event.InputEvent.SHIFT_DOWN_MASK
      • java.awt.event.InputEvent.CTRL_DOWN_MASK
      • java.awt.event.InputEvent.META_DOWN_MASK
      • java.awt.event.InputEvent.ALT_DOWN_MASK
      • java.awt.event.InputEvent.ALT_GRAPH_DOWN_MASK
      以前使われていた修飾子を次に挙げます。
      • java.awt.event.InputEvent.SHIFT_MASK
      • java.awt.event.InputEvent.CTRL_MASK
      • java.awt.event.InputEvent.META_MASK
      • java.awt.event.InputEvent.ALT_MASK
      • java.awt.event.InputEvent.ALT_GRAPH_MASK
      これらも使用できますが、これらは_DOWN_修飾子にマッピングされます。 これらの数字はすべて異なる2の累乗であるため、それらの組み合わせは各ビットが別々の修飾キーを表す整数です。 修飾子を指定しない場合は、0を使います。

      パラメータ:
      keyCode - キーボード・キーの数値コードを指定するint
      modifiers - 任意の修飾子のビット単位の論理和の組み合わせ
      onKeyRelease - KeyStrokeがキーを放す動作を表す場合はtrue、そうでない場合はfalse
      戻り値:
      そのキーのKeyStrokeオブジェクト
      関連項目:
    • getKeyStroke

      public static KeyStroke getKeyStroke(int keyCode, int modifiers)
      数値キー・コードおよび修飾子のセットが指定されると、KeyStrokeの共有インスタンスを返します。 返されるKeyStrokeは、キーを押す動作に対応します。

      java.awt.event.KeyEventで定義される「仮想キー」定数は、キー・コードを指定するために使用できます。 たとえば:

      • java.awt.event.KeyEvent.VK_ENTER
      • java.awt.event.KeyEvent.VK_TAB
      • java.awt.event.KeyEvent.VK_SPACE
      または、java.awt.event.KeyEvent.getExtendedKeyCodeForCharを呼び出すことで、キー・コードを取得することもできます。 修飾子は、次の組み合わせで構成されます。
      • java.awt.event.InputEvent.SHIFT_DOWN_MASK
      • java.awt.event.InputEvent.CTRL_DOWN_MASK
      • java.awt.event.InputEvent.META_DOWN_MASK
      • java.awt.event.InputEvent.ALT_DOWN_MASK
      • java.awt.event.InputEvent.ALT_GRAPH_DOWN_MASK
      以前使われていた修飾子を次に挙げます。
      • java.awt.event.InputEvent.SHIFT_MASK
      • java.awt.event.InputEvent.CTRL_MASK
      • java.awt.event.InputEvent.META_MASK
      • java.awt.event.InputEvent.ALT_MASK
      • java.awt.event.InputEvent.ALT_GRAPH_MASK
      これらも使用できますが、これらは_DOWN_修飾子にマッピングされます。 これらの数字はすべて異なる2の累乗であるため、それらの組み合わせは各ビットが別々の修飾キーを表す整数です。 修飾子を指定しない場合は、0を使います。

      パラメータ:
      keyCode - キーボード・キーの数値コードを指定するint
      modifiers - 任意の修飾子のビット単位の論理和の組み合わせ
      戻り値:
      そのキーのKeyStrokeオブジェクト
      関連項目:
    • getKeyStrokeForEvent

      public static KeyStroke getKeyStrokeForEvent(KeyEvent anEvent)
      指定されたKeyEventを生成したストロークを表すKeyStrokeを返します。

      このメソッドは、KeyTypedイベントからkeyCharを取得し、KeyPressedまたはKeyReleasedイベントからkeyCodeを取得します。 また、3つのKeyEvent型のすべてからKeyEvent修飾子を取得します。

      パラメータ:
      anEvent - KeyStrokeの取得元KeyEvent
      戻り値:
      イベントを発生させたKeyStroke
      スロー:
      NullPointerException - anEventがnullである場合
    • getKeyStroke

      public static KeyStroke getKeyStroke(String s)
      文字列の構文を解析し、KeyStrokeを返します。 文字列は次の構文を持つ必要があります。
         <modifiers>* (<typedID> | <pressedReleasedID>)
      
         modifiers := shift | control | ctrl | meta | alt | altGraph
         typedID := typed <typedKey>
         typedKey := string of length 1 giving Unicode character.
         pressedReleasedID := (pressed | released) key
         key := KeyEvent key code name, i.e. the name following "VK_".
      
      タイプするのか、押すのか、離すのかが指定されない場合、押すと見なされます。 いくつか例を挙げます。
          "INSERT" => getKeyStroke(KeyEvent.VK_INSERT, 0);
          "control DELETE" => getKeyStroke(KeyEvent.VK_DELETE, InputEvent.CTRL_MASK);
          "alt shift X" => getKeyStroke(KeyEvent.VK_X, InputEvent.ALT_MASK | InputEvent.SHIFT_MASK);
          "alt shift released X" => getKeyStroke(KeyEvent.VK_X, InputEvent.ALT_MASK | InputEvent.SHIFT_MASK, true);
          "typed a" => getKeyStroke('a');
      
      下位互換性を維持するため、Stringがnullまたは構文誤りの場合、nullが戻ります。
      パラメータ:
      s - 上記の構文に従って指定したString
      戻り値:
      そのStringのKeyStrokeオブジェクト。指定のStringがnullの場合、またはフォーマットが正しくない場合はnull
      関連項目: