JavaTM 2
Platform
Std. Ed. v1.4.0

java.awt.im.spi
インタフェース InputMethodContext

すべてのスーパーインタフェース:
InputMethodRequests

public interface InputMethodContext
extends InputMethodRequests

インプットメソッドが、そのクライアントコンポーネントとの通信またはほかのサービスの要求のために使用できるメソッドを提供します。このインタフェースは、インプットメソッドフレームワークによって実装され、インプットメソッドが InputMethod.setInputMethodContext(java.awt.im.spi.InputMethodContext) から受け取るインスタンスのメソッドを呼び出します。これ以外の実装者または呼び出し元はありません。

導入されたバージョン:
1.3

メソッドの概要
 JFrame createInputMethodJFrame(String title, boolean attachToInputContext)
          インプットメソッドが使用するトップレベルの Swing JFrame を作成します。
 Window createInputMethodWindow(String title, boolean attachToInputContext)
          インプットメソッドが使用するトップレベルのウィンドウを作成します。
 void dispatchInputMethodEvent(int id, AttributedCharacterIterator text, int committedCharacterCount, TextHitInfo caret, TextHitInfo visiblePosition)
          指定された引数でインプットメソッドイベントを作成して、そのイベントをクライアントコンポーネントにディスパッチします。
 void enableClientWindowNotification(InputMethod inputMethod, boolean enable)
          指定されたインプットメソッドに対する現在のクライアントウィンドウの位置および状態の通知を使用可能または使用不可能にします。
 
インタフェース java.awt.im.InputMethodRequests から継承したメソッド
cancelLatestCommittedText, getCommittedText, getCommittedTextLength, getInsertPositionOffset, getLocationOffset, getSelectedText, getTextLocation
 

メソッドの詳細

dispatchInputMethodEvent

public void dispatchInputMethodEvent(int id,
                                     AttributedCharacterIterator text,
                                     int committedCharacterCount,
                                     TextHitInfo caret,
                                     TextHitInfo visiblePosition)
指定された引数でインプットメソッドイベントを作成して、そのイベントをクライアントコンポーネントにディスパッチします。引数については、InputMethodEvent.InputMethodEvent(java.awt.Component, int, java.awt.font.TextHitInfo, java.awt.font.TextHitInfo) を参照してください。


createInputMethodWindow

public Window createInputMethodWindow(String title,
                                      boolean attachToInputContext)
インプットメソッドが使用するトップレベルのウィンドウを作成します。このウィンドウの動作を次に示します。 ただし、これらの 3 つの項目に関する実際の動作はプラットフォームに依存しています。

タイトルが表示または非表示となるかは、作成されたウィンドウの実際のタイプに依存します。

attachToInputContext が true の場合、新規ウィンドウは、このインプットメソッドコンテキストに対応した入力コンテキストを共有できます。これにより、ウィンドウにあるコンポーネントのイベントは自動的にそのインプットメソッドにディスパッチされます。さらに、setVisible(true) を使ってウィンドウを開いているときは、入力コンテキストによって、他の方法によるインプットメソッドへの終了および起動の呼び出しが防止されます。

パラメータ:
title - タイトルバーが存在する場合、ウィンドウのタイトルバーに表示されるタイトル。null 値は、空の文字列 "" と見なされる
attachToInputContext - このウィンドウが、インプットメソッドコンテキストに対応する入力コンテキストを共有するかどうか
戻り値:
インプットメソッドが使用する特性を保持するウィンドウ
例外:
HeadlessException - GraphicsEnvironment.isHeadless true を返す場合

createInputMethodJFrame

public JFrame createInputMethodJFrame(String title,
                                      boolean attachToInputContext)
インプットメソッドが使用するトップレベルの Swing JFrame を作成します。このウィンドウの動作を次に示します。 ただし、これらの 3 つの項目に関する実際の動作はプラットフォームに依存しています。

タイトルが表示または非表示となるかは、作成されたウィンドウの実際のタイプに依存します。

attachToInputContext が true の場合、新規ウィンドウは、このインプットメソッドコンテキストに対応した入力コンテキストを共有できます。これにより、ウィンドウにあるコンポーネントのイベントは自動的にそのインプットメソッドにディスパッチされます。さらに、setVisible(true) を使ってウィンドウを開いている場合、入力コンテキストによって、他の方法によるインプットメソッドへの終了および起動の呼び出しが防止されます。

パラメータ:
title - タイトルバーが存在する場合、ウィンドウのタイトルバーに表示されるタイトル。null 値は、空の文字列 "" と見なされる
attachToInputContext - このウィンドウが、インプットメソッドコンテキストに対応する入力コンテキストを共有するかどうか
戻り値:
インプットメソッドが使用する特性を保持する JFrame
例外:
HeadlessException - GraphicsEnvironment.isHeadless true を返す場合
導入されたバージョン:
1.4

enableClientWindowNotification

public void enableClientWindowNotification(InputMethod inputMethod,
                                           boolean enable)
指定されたインプットメソッドに対する現在のクライアントウィンドウの位置および状態の通知を使用可能または使用不可能にします。通知が使用可能な場合は、インプットメソッドの notifyClientWindowChange メソッドが、そのメソッドの仕様に記述されているとおりに呼び出されます。インプットメソッドが破棄されると、通知は自動的に使用不可能になります。

パラメータ:
inputMethod - 通知を使用可能または使用不可能にするインプットメソッド
enable - 使用可能にするには true、使用不可能にするには false

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.