|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
java.lang.Objectjava.awt.im.InputContext
public class InputContext
입력 메소드 및 키보드의 배치 등, 텍스트 입력 기능을 제어하는 메소드를 제공합니다. 다음의 2 개의 메소드가, 입력 메소드와 키보드의 배치의 양쪽 모두를 처리합니다. selectInputMethod 는, 클라이언트 컴퍼넌트가 로케일에 의해 입력 메소드와 키보드의 배치를 선택할 수 있도록(듯이) 합니다. getLocale 는, 클라이언트 컴퍼넌트가 현재의 입력 메소드와 키보드의 배치의 로케일을 취득할 수 있도록(듯이) 합니다. 그 외의 메소드는, 입력 메소드와의 대화를 보다 구체적으로 지원합니다. 이러한 메소드는, 클라이언트 컴퍼넌트가 입력 메소드의 동작을 제어해, 클라이언트 컴퍼넌트로부터 입력 메소드에 이벤트를 발송 할 수 있도록(듯이) 합니다.
디폴트에서는, Window 의 인스턴스 마다 1 개의 InputContext 의 인스턴스가 생성되어 이 입력 문맥은 윈도우의 컨테이너 계층내에 있는 모든 컴퍼넌트에 의해 공유됩니다. 다만, 윈도우내에서는 1 회에 1 개의 텍스트 입력 오퍼레이션만이 가능하고, 텍스트 컴퍼넌트간에 포커스를 이동할 경우에는 텍스트를 확정할 필요가 있습니다. 이것이 바람직하지 않은 경우, 텍스트 컴퍼넌트는 독자적인 입력 문맥 인스턴스를 생성할 수 있습니다.
Java 플랫폼은, Java 프로그램 언어로 개발되어java.awt.im.spi
패키지의 인터페이스를 사용해, 확장 기능으로서 Java SE 실행 환경에 인스톨 되는 입력 메소드를 지원합니다. 또 구현은, 실행하는 플랫폼의 네이티브인 입력 메소드의 사용을 지원할 수 있습니다. 다만, 모든 플랫폼 및 로케일이 입력 메소드를 제공하는 것은 아닙니다. 키보드의 배치는 호스트 플랫폼에 의해 제공됩니다.
입력 메소드는, (a) Java 프로그램 언어로 쓰여진 입력 메소드가 굳이 인스톨 되지 않고, (b) Java 플랫폼 구현 또는 기본이 되는 플랫폼이 네이티브의 입력 메소드를 지원하고 있지 않는 경우는, 「사용할 수 없습니다」. 그 경우에서도, 입력 문맥을 작성해 사용할 수 있습니다. 입력 문맥의 동작은, 아래와 같은 개별 메소드에 의해 지정됩니다.
Component.getInputContext()
,
Component.enableInputMethods(boolean)
생성자 의 개요 | |
---|---|
protected |
InputContext ()
InputContext 를 구축합니다. |
메소드의 개요 | |
---|---|
void |
dispatchEvent (AWTEvent event)
액티브한 입력 메소드에 이벤트를 발송 합니다. |
void |
dispose ()
이 입력 문맥으로 사용된 자원을 해제합니다. |
void |
endComposition ()
이 문맥으로 현재 진행중의 입력 변환을 종료합니다. |
Object |
getInputMethodControlObject ()
현재의 입력 메소드의 제어 객체 또는 null 를 돌려줍니다. |
static InputContext |
getInstance ()
새로운 InputContext 인스턴스를 돌려줍니다. |
Locale |
getLocale ()
현재의 입력 메소드 또는 키보드 배치의 현재의 로케일을 돌려줍니다. |
boolean |
isCompositionEnabled ()
현재의 입력 메소드가 변환을 위해서(때문에) 사용 가능한가 어떤가 판별합니다. |
void |
reconvert ()
현재의 입력 메소드에 대해, 현재의 클라이언트 컴퍼넌트로부터의 텍스트의 재변환을 요구합니다. |
void |
removeNotify (Component client)
포함 관계의 계층으로부터 클라이언트 컴퍼넌트가 삭제되었는지, 또는 컴퍼넌트로 입력 메소드가 지원되지 않게 된 것을 입력 문맥에 통지합니다. |
boolean |
selectInputMethod (Locale locale)
지정된 로케일을 지원하는 입력 메소드 또는 키보드의 배치를 선택하려고 할 때, 입력 메소드 또는 키보드의 배치가 정상적으로 선택되었는지의 여부를 나타내는 값을 돌려줍니다. |
void |
setCharacterSubsets (Character.Subset [] subsets)
이 입력 문맥의 입력 메소드로 입력할 수 있는 Unicode 캐릭터 세트의 부분집합을 설정합니다. |
void |
setCompositionEnabled (boolean enable)
파라미터 enable 의 값에 응해, 변환을 위해서(때문에) 현재의 입력 메소드를 사용 가능 또는 불가능하게 합니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
생성자 의 상세 |
---|
protected InputContext()
getInstance()
를 호출해 가져옵니다.
메소드의 상세 |
---|
public static InputContext getInstance()
public boolean selectInputMethod(Locale locale)
모든 호스트 operating system가, 현재 선택되고 있는 네이티브의 입력 메소드 또는 키보드의 배치의 로케일을 판정하거나 로케일에 의해 네이티브의 입력 메소드 또는 키보드의 배치를 선택하는 API 를 제공하고 있는 것은 아닙니다. 이러한 API 를 제공하지 않는 호스트 operating system의 경우,selectInputMethod
은 호스트 operating system가 제공하는 네이티브의 입력 메소드 또는 키보드의 배치가, 시스템의 디폴트 로케일만을 지원하는 것이라고 봅니다.
예를 들어, 사용자가 삽입 포인트를 변경하는 경우, 텍스트 편집 컴퍼넌트로부터 이 메소드를 호출하는 것으로, 사용자가 삽입 포인트 전후의 텍스트의 언어로 즉시 입력을 속행할 수 있습니다.
locale
- 목적의 새로운 로케일
NullPointerException
- locale
가 null 의 경우public Locale getLocale()
InputMethod.getLocale()
메소드가 null 를 돌려주는 경우, null 가 돌려주어집니다.
모든 호스트 operating system가, 현재 선택되고 있는 네이티브의 입력 메소드 또는 키보드 배치의 로케일을 판정하는 API 를 제공하고 있는 것은 아닙니다. 이러한 API 를 제공하지 않는 호스트 operating system의 경우,getLocale
는, 호스트 operating system가 제공하는 모든 네이티브인 입력 메소드 또는 키보드 배치의 현재의 로케일을, 시스템의 디폴트 로케일이라고 봅니다.
public void setCharacterSubsets(Character.Subset [] subsets)
subsets
- 문자 입력에 사용할 수 있는 Unicode 캐릭터 세트의 부분집합public void setCompositionEnabled(boolean enable)
enable
의 값에 응해, 변환을 위해서(때문에) 현재의 입력 메소드를 사용 가능 또는 불가능하게 합니다. 변환에 사용할 수 있는 입력 메소드는, 변환과 제어의 2 개의 목적으로, 들어 오는 이벤트를 해석합니다. 그 때, 사용 불가능한 입력 메소드는 변환을 위한 이벤트를 해석하지 않습니다. 다만, 입력 메소드가 사용 가능한가 어떤가에 관계없이, 이벤트는 입력 메소드에게 건네집니다. 또, 변환에 사용 불가능한 입력 메소드여도, 변환을 위해서(때문에) 자신을 사용 가능 또는 사용 불가능하게 하는 등의 제어 목적으로, 이벤트를 해석할 수가 있습니다.
호스트 operating system에 의해 제공되는 입력 메소드의 경우, 이 조작이 지원되고 있는지 어떤지를 항상 판단할 수 있다고는 할 수 없습니다. 예를 들어, 입력 메소드가 특정의 로케일로 밖에 변환하지 못하고, 다른 로케일에 대해서는 아무것도 실시하지 않는 경우가 있습니다. 그러한 입력 메소드의 경우, 이 메소드가 UnsupportedOperationException
를 throw 하지 않을 가능성이 있습니다만, 변환이 가능한지 어떤지에 영향을 주는 일도 없습니다.
enable
- 현재의 입력 메소드를 변환을 위해서(때문에) 사용 가능하게 할지 어떨지
UnsupportedOperationException
- 현재 사용할 수 있는 입력 메소드가 없는지,
혹은 현재의 입력 메소드가,
사용 가능/사용 불가능의 조작을 지원하고 있지 않는 경우isCompositionEnabled()
public boolean isCompositionEnabled()
true
,
그렇지 않은 경우는 false
UnsupportedOperationException
- 현재 사용할 수 있는 입력 메소드가 없는지,
혹은 현재의 입력 메소드가,
변환을 위해서(때문에) 사용 가능한가 어떤가의 확인을 지원하고 있지 않는 경우setCompositionEnabled(boolean)
public void reconvert()
InputMethodRequests.getSelectedText
메소드를 사용해, 재변환하는 텍스트를 클라이언트 컴퍼넌트로부터 가져옵니다. 입력 메소드에 의한 상세 정보의 요구를 처리하기 위해서, 다른 InputMethodRequests
메소드를 준비해 둘 필요가 있습니다. 변환된 텍스트 또는 확정 텍스트, 혹은 그 양쪽 모두가,InputMethodEvent
의 처리로서 클라이언트 컴퍼넌트에 보내집니다. 지정된 텍스트를 입력 메소드가 재변환할 수 없는 경우, 그 텍스트가 InputMethodEvent
의 확정 텍스트로서 돌려주어집니다.
UnsupportedOperationException
- 현재 사용할 수 있는 입력 메소드가 없는지,
혹은 현재의 입력 메소드가
재변환 조작을 지원하고 있지 않는 경우public void dispatchEvent(AWTEvent event)
event
- 이벤트
NullPointerException
- event
가 null 의 경우public void removeNotify(Component client)
Component.removeNotify
메소드로부터 불려 갑니다. 이 컴퍼넌트에 대한 입력 메소드로부터의 입력이 보류중의 경우, 그 입력은 파기됩니다. 사용할 수 있는 입력 메소드가 없는 경우, 이 메소드는 무효입니다.
client
- 클라이언트 컴퍼넌트
NullPointerException
- client
가 null 의 경우public void endComposition()
텍스트 편집 컴퍼넌트는, 예를 들어, 사용자가 텍스트내에서 (변환 텍스트의 외부에) 삽입 포인트를 이동했을 때나, 컴퍼넌트의 텍스트가 파일에 보존되거나 클립보드에 카피되었을 때 등, 다양한 상황으로 이 메소드를 호출하는 일이 있습니다.
public void dispose()
public Object getInputMethodControlObject()
사용할 수 있는 입력 메소드가 없는지, 혹은 현재의 입력 메소드가 입력 메소드 제어 객체를 제공하고 있지 않는 경우, null 가 돌려주어집니다.
|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.