|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
複合テキスト入力をサポートするインプットメソッドのためのインタフェースを定義します。従来より、インプットメソッドは、中国語、日本語、韓国語などの標準サイズのキーボードでは表現できない文字が多数存在する言語へのテキスト入力をサポートしています。しかし、このようなインプットメソッドは、英語、またはタイ語の文字再順序付けのための音声テキスト入力のサポートにも使用されています。
InputMethod のサブクラスは、Input Method Framework でロードしてから、API (InputContext.selectInputMethod) またはユーザインタフェース (入力方式の切替えメニュー) を通じて選択することができます。
| メソッドの概要 | |
void |
activate()
即時入力処理のためのインプットメソッドを起動します。 |
void |
deactivate(boolean isTemporary)
インプットメソッドを終了します。 |
void |
dispatchEvent(AWTEvent event)
インプットメソッドにイベントをディスパッチします。 |
void |
dispose()
インプットメソッドを破棄して、このメソッドが使用したリソースを解放します。 |
void |
endComposition()
このコンテキストで現在進行中の入力変換を終了します。 |
Object |
getControlObject()
このインプットメソッドの制御オブジェクトまたは null を返します。 |
Locale |
getLocale()
現在の入力ロケールを返します。 |
void |
hideWindows()
このインプットメソッドのインスタンスまたはクラスが開いたすべてのウィンドウを閉じ、または隠します。 |
boolean |
isCompositionEnabled()
このインプットメソッドが使用可能かどうか判別します。 |
void |
notifyClientWindowChange(Rectangle bounds)
クライアントのウィンドウ位置または状態の変更を、このインプットメソッドに通知します。 |
void |
reconvert()
再変換操作を開始します。 |
void |
removeNotify()
クライアントコンポーネントが包含関係の階層から削除されているか、またはインプットメソッドがそのコンポーネントで使用できなくなっていることを、インプットメソッドに通知します。 |
void |
setCharacterSubsets(Character.Subset[] subsets)
このインプットメソッドで入力可能な Unicode 文字セットのサブセットを設定します。 |
void |
setCompositionEnabled(boolean enable)
パラメータ enable の値に応じて、変換のインプットメソッドを使用可能または使用不可能にします。
|
void |
setInputMethodContext(InputMethodContext context)
インプットメソッドイベントのクライアントコンポーネントへのディスパッチ、およびクライアントコンポーネントの情報の要求に使用する、インプットメソッドのコンテキストを設定します。 |
boolean |
setLocale(Locale locale)
入力ロケールの設定を試みます。 |
| メソッドの詳細 |
public void setInputMethodContext(InputMethodContext context)
このメソッドは、インプットメソッドのインスタンスを生成するとすぐに呼び出されます。
context - このインプットメソッドのためのインプットメソッドコンテキストNullPointerException - context が null の場合public boolean setLocale(Locale locale)
このメソッドは、次のときに呼び出されます。
InputContext.selectInputMethod が呼び出すとき
getLocale メソッドが null でない値を返す場合に、ユーザインタフェースを使ってこのインプットメソッドに切り替えるとき
locale - 入力するロケールNullPointerException - locale が null の場合public Locale getLocale()
このメソッドは、次のときに呼び出されます。
InputContext.getLocale が呼び出すとき
public void setCharacterSubsets(Character.Subset[] subsets)
このメソッドは、次のときに呼び出されます。
InputContext.setCharacterSubsets が呼び出すとき
subsets - 文字が入力される Unicode 文字セットのサブセットpublic void setCompositionEnabled(boolean enable)
enable の値に応じて、変換のインプットメソッドを使用可能または使用不可能にします。
変換のために使用可能なインプットメソッドは、変換と制御の 2 つの目的で、入ってくるイベントを解釈します。一方、使用不可能なインプットメソッドは変換のためにイベントを解釈しません。ただし、インプットメソッドが使用可能かどうかに関係なく、イベントはインプットメソッドに渡されます。また、変換に使用不可能なインプットメソッドであっても、変換のために自身を使用可能または使用不可能にするなどの制御目的で、イベントを解釈することができます。
このメソッドは、次のときに呼び出されます。
InputContext.setCompositionEnabled が呼び出すとき
isCompositionEnabled メソッドが例外をスローしないで返される場合に、ユーザインタフェースまたは InputContext.selectInputMethod を使い、別のインプットメソッドからこのインプットメソッドに切り替えるとき
enable - 変換のためのインプットメソッドを使用可能にするかどうかUnsupportedOperationException - このインプットメソッドが、使用可能/使用不可能オペレーションをサポートしない場合isCompositionEnabled()public boolean isCompositionEnabled()
このメソッドは、次のときに呼び出されます。
InputContext.isCompositionEnabled が呼び出すとき
InputContext.selectInputMethod を使って、このインプットメソッドから別のインプットメソッドに切り替えるとき
true、そうでない場合は falseUnsupportedOperationException - このインプットメソッドが、自身が変換のために使用可能かどうかの確認ができない場合setCompositionEnabled(boolean)public void reconvert()
InputMethodRequests.getSelectedText メソッドを使って、現在のクライアントコンポーネントから再変換するテキストを取得します。このメソッドは、他の InputMethodRequests メソッドを使って再変換操作に必要な追加情報を要求できます。この操作が変換して確定したテキストは、クライアントコンポーネントに InputMethodEvent のシーケンスとして送られます。指定されたテキストが再変換できない場合に、同一のテキストが確定テキストとしてクライアントコンポーネントに送られることはありません。
InputContext.reconvert がこのメソッドを呼び出します。
UnsupportedOperationException - このインプットメソッドが、再変換操作をサポートしない場合public void dispatchEvent(AWTEvent event)
consume メソッドも呼び出します。これにより、イベントはそのコンポーネントのイベント処理メソッドまたはリスナーにディスパッチされないようになります。
イベントは、InputEvent またはそのサブクラスのインスタンスの場合にディスパッチされます。AWT クラスの KeyEvent と MouseEvent のインスタンスの場合も含みます。
InputContext.dispatchEvent がこのメソッドを呼び出します。
event - インプットメソッドにディスパッチされるイベントNullPointerException - event が null の場合public void notifyClientWindowChange(Rectangle bounds)
InputMethodContext.enableClientWindowNotification を参照)。入力コンテキストの removeNotify メソッドが呼び出されると、このメソッドの呼び出しは一時的に保留され、新規のクライアントコンポーネントがインプットメソッドを起動すると再開されます。このメソッドは次の場合に呼び出されます。
enableClientWindowNotification(inputMethod, true) からenableClientWindowNotification(inputMethod, true) を呼び出したあと最初にインプットメソッドを起動するときbounds - 画面上のクライアントウィンドウの 境界。クライアントウィンドウがアイコン化されるか、不可視の場合は nullpublic void activate()
インプットメソッドが独自のウィンドウを所有する場合、この時点で、すべての必要なウィンドウが開いており可視であることを確認する必要があります。
このメソッドは、次のときに呼び出されます。
InputContext.dispatchEvent が呼び出すとき
InputContext.selectInputMethod を使って、別のインプットメソッドからこのインプットメソッドに切り替えるとき
public void deactivate(boolean isTemporary)
FocusEvent.isTemporary の引数と同じ意味を持ちます。
インプットメソッドが独自のウィンドウを所有する場合、ルックアップ選択ウィンドウなど現在の変換に関連するウィンドウのみが、ここで閉じます。このインプットメソッドをすぐに、別のクライアントコンポーネントのために再起動することも可能ですが、コントロールパネルなどのより持続的なウィンドウを閉じたり再び開いたりすると、不必要な画面フリッカーが生成されます。別のインプットメソッドクラスのインスタンスを起動する場合は、その前に hideWindows() を現在のインプットメソッドで呼び出します。
このメソッドは、次のときに呼び出されます。
InputContext.dispatchEvent が呼び出すとき
InputContext.selectInputMethod を使って、このインプットメソッドから別のインプットメソッドに切り替えるとき
removeNotify の前
isTemporary - フォーカス変更が一時的かどうかpublic void hideWindows()
このメソッドは、次のときに呼び出されます。
このメソッドは、インプットメソッドが停止している場合にだけ呼び出されます。public void removeNotify()
このメソッドは InputContext.removeNotify によって呼び出されます。
このメソッドは、インプットメソッドが停止している場合にだけ呼び出されます。
public void endComposition()
テキスト編集コンポーネントは、たとえば、ユーザがテキスト内で (変換テキストの外部に) 挿入ポイントを移動したときや、コンポーネントのテキストがファイルに保存されたり、クリップボードにコピーされたときなど、さまざまな状況でこのメソッドを呼び出すことがあります。
このメソッドは、次のときに呼び出されます。
InputContext.endComposition が呼び出すとき
InputContext.dispatchEvent が呼び出すとき
InputContext.selectInputMethod を使って、このインプットメソッドから別のインプットメソッドに切り替えるとき
public void dispose()
このメソッドは InputContext.dispose によって呼び出されます。
このメソッドは、インプットメソッドが停止している場合にだけ呼び出されます。破棄したあとに、このインスタンスで呼び出されるこのインタフェースのメソッドはありません。
public Object getControlObject()
このメソッドは InputContext.getInputMethodControlObject によって呼び出されます。
|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.