モジュール java.desktop
パッケージ java.awt

クラスAWTKeyStroke

java.lang.Object
java.awt.AWTKeyStroke
すべての実装されたインタフェース:
Serializable
直系の既知のサブクラス:
KeyStroke

public class AWTKeyStroke extends Object implements Serializable
キーボードまたは同等の入力デバイス上のキー・アクションを表すAWTKeyStroke AWTKeyStrokeは、KEY_PRESSEDKEY_RELEASED KeyEventのように、特定のキーを押したり離したりする動作にのみ対応し、KEY_TYPED KeyEventのように、特定のJava文字の入力を対応させることもできます。 どのような場合でも、AWTKeyStrokeでは、アクションを正確に一致させるために必要な修飾子(Alt、Shift、Control、Meta、AltGraphの各キー、またはこれらのキーの組み合わせ)を指定できます。

AWTKeyStrokesは不変であり、重複しないことを想定しています。 このため、クライアント・コードで独自のAWTKeyStrokeを定義しないで、getAWTKeyStrokeのバリアントを使います。 このようなファクトリ・メソッドをクライアントで使用すると、AWTKeyStrokeの実装で、インスタンスの効率的なキャッシュと共有が可能です。

導入されたバージョン:
1.4
関連項目:
getAWTKeyStroke(char), 直列化された形式
  • コンストラクタのサマリー

    コンストラクタ
    修飾子
    コンストラクタ
    説明
    protected
    デフォルト値を使用してAWTKeyStrokeを構築します。
    protected
    AWTKeyStroke​(char keyChar, int keyCode, int modifiers, boolean onKeyRelease)
    指定された値を持つAWTKeyStrokeを構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    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を返します。
    char
    このAWTKeyStrokeの文字を返します。
    int
    このAWTKeyStrokeの数値キー・コードを返します。
    int
    このAWTKeyStrokeに対応するKeyEventのタイプを返します。
    int
    このAWTKeyStrokeの修飾キーを返します。
    int
    一意であると考えられるこのオブジェクトの数値を返します。この値は、ハッシュ表でインデックス値として使用できます。
    boolean
    このAWTKeyStrokeがキー解放を表すかどうかを返します。
    protected Object
    このインスタンスに等しい、AWTKeyStrokeのキャッシュされたインスタンス(またはAWTKeyStrokeのサブクラス)を返します。
    protected static void
    registerSubclass​(Class<?> subclass)
    非推奨。 
    このオブジェクトのプロパティを表示および識別する文字列を返します。

    クラス java.lang.Objectで宣言されたメソッド

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • コンストラクタの詳細

    • AWTKeyStroke

      protected AWTKeyStroke()
      デフォルト値を使用してAWTKeyStrokeを構築します。 次のデフォルト値を使用します。
      AWTKeyStrokeのデフォルト値
      プロパティ デフォルト値
      キー文字 KeyEvent.CHAR_UNDEFINED
      コード・キー KeyEvent.VK_UNDEFINED
      修飾子 なし
      キーを離すとき false
      AWTKeyStrokeはクライアント・コードで構築するべきではありません。 代わりに、getAWTKeyStrokeのバリアントを使用します。
      関連項目:
      getAWTKeyStroke(char)
    • AWTKeyStroke

      protected AWTKeyStroke(char keyChar, int keyCode, int modifiers, boolean onKeyRelease)
      指定された値を持つAWTKeyStrokeを構築します。 AWTKeyStrokeはクライアント・コードで構築するべきではありません。 代わりに、getAWTKeyStrokeのバリアントを使用します。
      パラメータ:
      keyChar - キーボード・キーの文字値
      keyCode - このAWTKeyStrokeのキー・コード
      modifiers - 任意の修飾子のビット単位の論理和の組み合わせ
      onKeyRelease - このAWTKeyStrokeがキーを離す動作に対応する場合はtrue、そうでない場合はfalse
      関連項目:
      getAWTKeyStroke(char)
  • メソッドの詳細

    • registerSubclass

      @Deprecatedprotected static void registerSubclass(Class<?> subclass)
      非推奨。
      このメソッドは効果がなく、バイナリの非互換性を避けるために残されています。
      パラメータ:
      subclass - ファクトリ・メソッドがインスタンスを生成する新しいクラス
    • getAWTKeyStroke

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

      public static AWTKeyStroke getAWTKeyStroke(Character keyChar, int modifiers)
      指定されたCharacterオブジェクトと修飾子のセットのKEY_TYPEDイベントを表すAWTKeyStrokeの共有インスタンスを返します。 最初のパラメータはchar型ではなくCharacter型のパラメータです。 これは、getAWTKeyStroke(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 - 任意の修飾子のビット単位の論理和の組み合わせ
      戻り値:
      そのキーのAWTKeyStrokeオブジェクト
      例外:
      IllegalArgumentException - keyCharnullの場合
      関連項目:
      InputEvent
    • getAWTKeyStroke

      public static AWTKeyStroke getAWTKeyStroke(int keyCode, int modifiers, boolean onKeyRelease)
      キーが押されたときと解放されたときのどちらでアクティブになるかを指定して、数値キー・コードと修飾子のセットを使用して、AWTKeyStrokeの共有インスタンスを返します。

      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 - このAWTKeyStrokeがキーを離す動作を表現する場合はtrue、そうでない場合はfalse
      戻り値:
      上記キーのAWTKeyStrokeオブジェクト
      関連項目:
      KeyEvent, InputEvent
    • getAWTKeyStroke

      public static AWTKeyStroke getAWTKeyStroke(int keyCode, int modifiers)
      数値キー・コードと修飾子のセットを使用して、AWTKeyStrokeの共有インスタンスを返します。 返されるAWTKeyStrokeは、キーを押す動作に対応します。

      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.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 - 任意の修飾子のビット単位の論理和の組み合わせ
      戻り値:
      そのキーのAWTKeyStrokeオブジェクト
      関連項目:
      KeyEvent, InputEvent
    • getAWTKeyStrokeForEvent

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

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

      パラメータ:
      anEvent - AWTKeyStrokeを取得するKeyEvent
      戻り値:
      イベントを発生させたAWTKeyStroke
      例外:
      NullPointerException - anEventがnullである場合
    • getAWTKeyStroke

      public static AWTKeyStroke getAWTKeyStroke(String s)
      文字列を解析し、AWTKeyStrokeを返します。 文字列は次の構文を持つ必要があります。
          <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" => getAWTKeyStroke(KeyEvent.VK_INSERT, 0);
           "control DELETE" => getAWTKeyStroke(KeyEvent.VK_DELETE, InputEvent.CTRL_MASK);
           "alt shift X" => getAWTKeyStroke(KeyEvent.VK_X, InputEvent.ALT_MASK | InputEvent.SHIFT_MASK);
           "alt shift released X" => getAWTKeyStroke(KeyEvent.VK_X, InputEvent.ALT_MASK | InputEvent.SHIFT_MASK, true);
           "typed a" => getAWTKeyStroke('a');
       
      パラメータ:
      s - 上記の構文に従って指定したString
      戻り値:
      上記文字列のAWTKeyStrokeオブジェクト
      例外:
      IllegalArgumentException - snullであるか、フォーマットが正しくない場合
    • getKeyChar

      public final char getKeyChar()
      このAWTKeyStrokeの文字を返します。
      戻り値:
      char値
      関連項目:
      getAWTKeyStroke(char), KeyEvent.getKeyChar()
    • getKeyCode

      public final int getKeyCode()
      このAWTKeyStrokeの数値キー・コードを返します。
      戻り値:
      キー・コード値が格納されているint値
      関連項目:
      getAWTKeyStroke(int,int), KeyEvent.getKeyCode()
    • getModifiers

      public final int getModifiers()
      このAWTKeyStrokeの修飾キーを返します。
      戻り値:
      修飾子が格納されているint値
      関連項目:
      getAWTKeyStroke(int,int)
    • isOnKeyRelease

      public final boolean isOnKeyRelease()
      このAWTKeyStrokeがキー解放を表すかどうかを返します。
      戻り値:
      このAWTKeyStrokeがキーを離す動作を表現する場合はtrue、そうでない場合はfalse
      関連項目:
      getAWTKeyStroke(int,int,boolean)
    • getKeyEventType

      public final int getKeyEventType()
      このAWTKeyStrokeに対応するKeyEventのタイプを返します。
      戻り値:
      KeyEvent.KEY_PRESSEDKeyEvent.KEY_TYPED、またはKeyEvent.KEY_RELEASED
      関連項目:
      KeyEvent
    • hashCode

      public int hashCode()
      一意であると考えられるこのオブジェクトの数値を返します。この値は、ハッシュ表でインデックス値として使用できます。
      オーバーライド:
      hashCode 、クラス:  Object
      戻り値:
      このオブジェクトを表すint値
      関連項目:
      Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)
    • equals

      public final boolean equals(Object anObject)
      このオブジェクトが指定されたオブジェクトと同じ場合にtrueを返します。
      オーバーライド:
      equals 、クラス:  Object
      パラメータ:
      anObject - このオブジェクトと比較するオブジェクト
      戻り値:
      オブジェクトが同じ場合はtrue
      関連項目:
      Object.hashCode()HashMap
    • toString

      public String toString()
      このオブジェクトのプロパティを表示および識別する文字列を返します。 このメソッドから返されたStringをパラメータとしてgetAWTKeyStroke(String)に渡して、このキー・ストロークに等しいキー・ストロークを生成します。
      オーバーライド:
      toString 、クラス:  Object
      戻り値:
      このオブジェクトの文字列表現
      関連項目:
      getAWTKeyStroke(String)
    • readResolve

      protected Object readResolve() throws ObjectStreamException
      このインスタンスに等しい、AWTKeyStrokeのキャッシュされたインスタンス(またはAWTKeyStrokeのサブクラス)を返します。
      戻り値:
      このインスタンスと同じ、キャッシュされたインスタンス
      例外:
      ObjectStreamException - 直列化の問題が発生した場合