JavaTM Platform
Standard Ed. 6

javax.swing
클래스 KeyStroke

java.lang.Object 
  상위를 확장 java.awt.AWTKeyStroke 
      상위를 확장 javax.swing.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)는 그것들이 등록되어 있는 컴퍼넌트로 자동적으로 액션을 일으킵니다.

KeyStroke 는 불변이며, 일의가 되도록(듯이) 설계되고 있습니다. 클라이언트 코드로 KeyStroke 를 작성할 수 없습니다. 대신에, 변형의 getKeyStroke 를 사용합니다. 이러한 팩토리 메소드에 의해, 인스턴스의 캐쉬와 공유를 효율적으로 실시하도록(듯이) KeyStroke 를 구현할 수 있습니다.

경고: 이 클래스의 직렬화 된 객체는, 향후의 Swing 릴리스와 호환은 아니게 될 예정입니다. 현재의 직렬화의 지원는, 단기간의 운용이나, 같은 버젼의 Swing 를 실행하는 어플리케이션간의 RMI 에 적절하고 있습니다. JDK Version 1.4 이후, 모든 JavaBeans 의 장기간의 운용 지원는,java.beans 패키지에 추가되고 있습니다. 자세한 것은,XMLEncoder 를 참조해 주세요.

관련 항목:
Keymap , getKeyStroke(char)

메소드의 개요
static KeyStroke getKeyStroke (char keyChar)
          지정된 문자의 KEY_TYPED 이벤트를 나타내는 KeyStroke 의 공유 인스턴스를 돌려줍니다.
static KeyStroke getKeyStroke (Character  keyChar, int modifiers)
          Character 객체와 수식자세트가 지정되면(자),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 (String  s)
          캐릭터 라인의 구문을 해석해,KeyStroke 를 돌려줍니다.
static KeyStroke getKeyStrokeForEvent (KeyEvent  anEvent)
          지정된 KeyEvent 를 생성한 stroke를 나타내는 KeyStroke 를 돌려줍니다.
 
클래스 java.awt. AWTKeyStroke 로부터 상속된 메소드
equals , getAWTKeyStroke , getAWTKeyStroke , getAWTKeyStroke , getAWTKeyStroke , getAWTKeyStroke , getAWTKeyStrokeForEvent , getKeyChar , getKeyCode , getKeyEventType , getModifiers , hashCode , isOnKeyRelease , readResolve , registerSubclass , toString
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , finalize , getClass , notify , notifyAll , wait , wait , wait
 

메소드의 상세

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) 호출과의 중복을 피하기 (위해)때문에입니다. 수식자는, 다음의 편성으로 구성됩니다. 다음에 나타내는 낡은 수식자도 사용할 수 있습니다만, 이것들은 _DOWN_ 수식자에 매핑 됩니다. 이것들도 사용할 수 있습니다만, 이것들은 _DOWN_ 수식자에 매핑 됩니다. 이러한 숫자는 모두 다른 2 의 누승이기 (위해)때문에, 그러한 편성은 각 비트가 다른 수식 키를 나타내는 정수입니다. 수식자를 지정하지 않는 경우는, 0 을 사용합니다.

파라미터:
keyChar - 키보드 문자의 Character 객체
modifiers - 수식자의 비트 단위의 논리합
반환값:
그 키의 KeyStroke 객체
예외:
IllegalArgumentException - keyChar 가 null 의 경우
도입된 버젼:
1.3
관련 항목:
InputEvent

getKeyStroke

public static KeyStroke  getKeyStroke(int keyCode,
                                     int modifiers,
                                     boolean onKeyRelease)
수치 키코드 및 수식자세트가 지정되면(자), KeyStroke 의 공유 인스턴스를 돌려줍니다. 이 인스턴스는, 키를 눌렀을 때 또는 놓았을 때에 키가 액티브하게 될지 어떨지를 나타냅니다.

java.awt.event.KeyEvent 로 정의되는 「가상 키」정수는, 키코드를 지정하기 위해서 사용할 수 있습니다. 다음에 예를 나타냅니다.

수식자는, 다음의 편성으로 구성됩니다. 이전 사용되고 있던 수식자를 다음에 듭니다. 이것들도 사용할 수 있습니다만, 이것들은 _DOWN_ 수식자에 매핑 됩니다. 이러한 숫자는 모두 다른 2 의 누승이기 (위해)때문에, 그러한 편성은 각 비트가 다른 수식 키를 나타내는 정수입니다. 수식자를 지정하지 않는 경우는, 0 을 사용합니다.

파라미터:
keyCode - 키보드의 키의 수치 코드를 지정하는 int 치
modifiers - 수식자의 비트 단위의 논리합
onKeyRelease - KeyStroke 가 키를 놓는 동작을 나타내는 경우는 true, 그렇지 않은 경우는 false
반환값:
그 키의 KeyStroke 객체
관련 항목:
KeyEvent , InputEvent

getKeyStroke

public static KeyStroke  getKeyStroke(int keyCode,
                                     int modifiers)
수치 키코드 및 수식자세트가 지정되면(자), KeyStroke 의 공유 인스턴스를 돌려줍니다. 반환되는 KeyStroke 는, 키를 누르는 동작에 대응합니다.

java.awt.event.KeyEvent 로 정의되는 「가상 키」정수는, 키코드를 지정하기 위해서 사용할 수 있습니다. 다음에 예를 나타냅니다.

수식자는, 다음의 편성으로 구성됩니다. 이전 사용되고 있던 수식자를 다음에 듭니다. 이것들도 사용할 수 있습니다만, 이것들은 _DOWN_ 수식자에 매핑 됩니다. 이러한 숫자는 모두 다른 2 의 누승이기 (위해)때문에, 그러한 편성은 각 비트가 다른 수식 키를 나타내는 정수입니다. 수식자를 지정하지 않는 경우는, 0 을 사용합니다.

파라미터:
keyCode - 키보드의 키의 수치 코드를 지정하는 int 치
modifiers - 수식자의 비트 단위의 논리합
반환값:
그 키의 KeyStroke 객체
관련 항목:
KeyEvent , InputEvent

getKeyStrokeForEvent

public static KeyStroke  getKeyStrokeForEvent(KeyEvent  anEvent)
지정된 KeyEvent 를 생성한 stroke를 나타내는 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

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.