|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
public interface InputMethod
複合テキスト入力をサポートするインプットメソッドのためのインタフェースを定義します。従来より、インプットメソッドは、中国語、日本語、韓国語など、標準サイズのキーボードでは表現できない文字が多数存在する言語でのテキスト入力をサポートしています。これらのインプットメソッドは、英語の音声テキスト入力、またはタイ語の文字再順序付けのサポートにも使用されます。
InputMethod のサブクラスは、インプットメソッドフレームワークでロードしてから、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)
入力ロケールの設定を試みます。 |
メソッドの詳細 |
---|
void setInputMethodContext(InputMethodContext context)
このメソッドは、インプットメソッドのインスタンスを生成するとすぐに呼び出されます。
context
- このインプットメソッド用のインプットメソッドコンテキスト
NullPointerException
- context
が null の場合boolean setLocale(Locale locale)
このメソッドは、次の場合に呼び出されます。
InputContext.selectInputMethod
により
getLocale
メソッドが null でない値を返す場合に、ユーザーインタフェースを使ってこのインプットメソッドに切り替えるとき
locale
- 入力するロケール
NullPointerException
- locale
が null の場合Locale getLocale()
このメソッドは、次の場合に呼び出されます。
InputContext.getLocale
により
void setCharacterSubsets(Character.Subset[] subsets)
このメソッドは、次の場合に呼び出されます。
InputContext.setCharacterSubsets
により
subsets
- 文字入力に使用できる Unicode 文字セットのサブセットvoid setCompositionEnabled(boolean enable)
enable
の値に応じて、変換のインプットメソッドを使用可能または使用不可能にします。
変換に使用できるインプットメソッドは、変換と制御の 2 つの目的で、入ってくるイベントを解釈します。 そのとき、使用不可能なインプットメソッドは変換のためのイベントを解釈しません。ただし、インプットメソッドが使用可能かどうかに関係なく、イベントはインプットメソッドに渡されます。 また、変換に使用不可能なインプットメソッドであっても、変換のために自身を使用可能または使用不可能にするなどの制御目的で、イベントを解釈することができます。
ホストオペレーティングシステムによって提供されるインプットメソッドの場合、この操作がサポートされているかどうかを常に判断できるとは限りません。たとえば、インプットメソッドが特定のロケールでしか変換できず、ほかのロケールに対しては何も行わない場合があります。そうしたインプットメソッドの場合、このメソッドが UnsupportedOperationException
をスローしない可能性がありますが、変換が可能であるかどうかに影響を与えることもありません。
このメソッドは、次の場合に呼び出されます。
InputContext.setCompositionEnabled
により
isCompositionEnabled
メソッドが例外をスローしないで返される場合に、ユーザーインタフェースまたは InputContext.selectInputMethod
を使って、別のインプットメソッドからこのインプットメソッドに切り替えるとき
enable
- 変換用のインプットメソッドを使用可能にするかどうか
UnsupportedOperationException
- このインプットメソッドが、使用可能/使用不可能の操作をサポートしていない場合isCompositionEnabled()
boolean isCompositionEnabled()
このメソッドは、次の場合に呼び出されます。
InputContext.isCompositionEnabled
により
InputContext.selectInputMethod
を使って、このインプットメソッドから別のインプットメソッドに切り替えるとき
true
、そうでない場合は false
UnsupportedOperationException
- このインプットメソッドが、変換のために使用可能かどうかの確認をサポートしていない場合setCompositionEnabled(boolean)
void reconvert()
InputMethodRequests.getSelectedText
メソッドを使って、現在のクライアントコンポーネントから再変換するテキストを取得します。このメソッドは、ほかの InputMethodRequests
メソッドを使って再変換操作に必要な追加情報を要求できます。この操作によって変換し、確定したテキストは、クライアントコンポーネントに InputMethodEvent
のシーケンスとして送られます。 指定されたテキストが再変換できない場合は、同一のテキストを確定テキストとしてクライアントコンポーネントに送る必要があります。
このメソッドは InputContext.reconvert
によって呼び出されます。
UnsupportedOperationException
- このインプットメソッドが、再変換操作をサポートしていない場合void dispatchEvent(AWTEvent event)
consume
メソッドも呼び出します。 これにより、イベントはそのコンポーネントのイベント処理メソッドまたはイベントリスナーにディスパッチされなくなります。
イベントは、InputEvent またはそのサブクラスのインスタンスの場合にディスパッチされます。これには、AWT クラスの KeyEvent および MouseEvent のインスタンスが含まれます。
このメソッドは InputContext.dispatchEvent
によって呼び出されます。
event
- インプットメソッドにディスパッチされるイベント
NullPointerException
- event
が null の場合void notifyClientWindowChange(Rectangle bounds)
InputMethodContext.enableClientWindowNotification
を参照)。入力コンテキストの removeNotify
メソッドが呼び出されると、このメソッドの呼び出しは一時的に保留され、新規のクライアントコンポーネントがインプットメソッドを起動すると再開されます。このメソッドは次の場合に呼び出されます。
enableClientWindowNotification(inputMethod, true)
からenableClientWindowNotification(inputMethod, true)
の呼び出し後に、最初にインプットメソッドを起動するとき
bounds
- 画面上のクライアントウィンドウの bounds
。クライアントウィンドウがアイコン化されるか、不可視の場合は nullvoid activate()
インプットメソッドが独自のウィンドウを所有する場合、この時点で、すべての必要なウィンドウが開いており可視であることを確認する必要があります。
このメソッドは、次の場合に呼び出されます。
InputContext.dispatchEvent
により
InputContext.selectInputMethod
を使って、別のインプットメソッドからこのインプットメソッドに切り替えるとき
void deactivate(boolean isTemporary)
FocusEvent.isTemporary
の引数と同じ意味を持ちます。
インプットメソッドが独自のウィンドウを所有する場合、ルックアップ選択ウィンドウなど現在の変換に関連するウィンドウのみが、ここで閉じられます。このインプットメソッドを、別のクライアントコンポーネントのためにすぐに再起動することも可能ですが、コントロールパネルなどのより持続的なウィンドウを閉じたりふたたび開いたりすると、不必要な画面フリッカーが生成されます。別のインプットメソッドクラスのインスタンスを起動する場合は、その前に hideWindows()
を現在のインプットメソッドで呼び出します。
このメソッドは、次の場合に呼び出されます。
InputContext.dispatchEvent
により
InputContext.selectInputMethod
を使って、このインプットメソッドから別のインプットメソッドに切り替えるとき
removeNotify
が呼び出される前
isTemporary
- フォーカス変更が一時的かどうかvoid hideWindows()
このメソッドは、次の場合に呼び出されます。
このメソッドは、インプットメソッドが停止している場合にだけ呼び出されます。
void removeNotify()
このメソッドは InputContext.removeNotify
によって呼び出されます。
このメソッドは、インプットメソッドが停止している場合にだけ呼び出されます。
void endComposition()
テキスト編集コンポーネントは、たとえば、ユーザーがテキスト内で (変換テキストの外部に) 挿入ポイントを移動したときや、コンポーネントのテキストがファイルに保存されたり、クリップボードにコピーされたときなど、さまざまな状況でこのメソッドを呼び出すことがあります。
このメソッドは、次の場合に呼び出されます。
InputContext.endComposition
により
InputContext.dispatchEvent
により
InputContext.selectInputMethod
を使って、このインプットメソッドから別のインプットメソッドに切り替えるとき
void dispose()
このメソッドは InputContext.dispose
によって呼び出されます。
このメソッドは、インプットメソッドが停止している場合にだけ呼び出されます。破棄したあとに、このインスタンスで呼び出されるこのインタフェースのメソッドはありません。
Object getControlObject()
このメソッドは InputContext.getInputMethodControlObject
により呼び出されます。
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。