サンプルプログラムでは、次のインタフェースを使用しています。利用単位と処理を行うタイミングは、制御インタフェースが使用される場面を想定して記述していますが、この記述以外でも利用可能です。
制御インタフェース | 利用単位 | 処理を行うタイミング |
---|---|---|
IME切り替え | プログラム | 起動時 |
PUBLIC1インタフェースのサポート情報取得 | プログラム | 起動時 |
日本語入力オン/オフ(本サンプルではオンのみ) | 入力フィールド | フォーカス移動時 |
環境設定インタフェース | 入力フィールド | フォーカス移動時 |
辞書切替えインタフェース | 入力フィールド | フォーカス移動時 |
マルチボード制御インタフェース | 入力フィールド | フォーカス移動時 |
起動時の処理
サンプルプログラムの起動時に、IME切り替えのIMMAPIとPUBLIC1インタフェースのサポート情報取得の制御インタフェースを使用しています。
Charset-入力アシスト以外の言語が標準の言語に指定されていた場合、ActivateKeyboardLayout( )を呼び出すことでCharset-入力アシストに切替えています。
ソースコードの例は、「1. 言語切替え」を参照してください。
Charset-入力アシストが使用するPUBLIC1インタフェースをサポートしているかどうかを、ImmEscape( )のサポート情報取得を呼び出すことで確認します。
ソースコードの例は、「2. PUBLIC1インタフェースのサポート確認」を参照してください。ここでは、「学習レベル」設定の取得/変更のサポートのみ確認していますが、使用したいPUBLIC1インタフェースの分だけ確認してください。
[自動的に日本語入力オン]フィールド
[自動的に日本語入力オン]フィールドでは、日本語入力オン/オフのIMMAPIを使用しています。
フォーカスが移動してきた際に、ImmSetOpenStatus( )を呼び出すことで、日本語入力をオンにしています。
ソースコードの例は、「3. 日本語入力オン/オフ」を参照してください。
[辞書切替え]フィールド
[辞書切替え]フィールドでは、辞書切替えインタフェースおよび環境設定インタフェースを使用しています。
フォーカスが移動してきた際に、ImmEscape( )の辞書切替えインタフェースを呼び出すことで、辞書の設定と切替えを行っています。
ソースコードの例は、「4. 辞書の設定と切替え」を参照してください。
同じくフォーカスが移動してきた際に、ImmEscape( )の環境設定インタフェースを呼び出すことで一時的に動作環境の設定を変更し、「学習しない」「入力予測を表示しない」設定にしています。
ソースコードの例は、「5. 「学習しない」「入力予測表示しない」設定への変更」を参照してください。ここでは、「学習レベルを学習しない」に設定していますが、「入力予測表示を表示しない」に設定したければ、10行目で「FJI_EP1_ENV_MEMORIZELEVEL」の代わりに「FJI_EP1_ENV_PREDICTVALID」を設定してください。
フォーカスが他へ移動する際に、ImmEscape( )の辞書切替えインタフェースを呼び出すことで、辞書をデフォルトに戻しています。
ソースコードの例は、「6. デフォルトの辞書ファイル設定への切替え」を参照してください。
[マルチボード起動]フィールド
[マルチボード起動]フィールドでは、日本語入力オン/オフのIMMAPIとマルチボード起動インタフェースを使用しています。
フォーカスが移動してきた際に、ImmSetOpenStatus( )を呼び出すことで、日本語入力をオンにしています。
オンにする方法は「自動的に日本語入力オンフィールド」と同じです。
同じくフォーカスが移動してきた際に、ImmEscape( )のマルチボード起動インタフェースを呼び出すことで、マルチボードの入力方式の設定とマルチボードの表示を行っています。
ソースコードの例は、「7. マルチボードを指定入力方式で起動」を参照してください。
フォーカスが他へ移動する際に、ImmEscape( )のマルチボード起動インタフェースを呼び出すことで、マルチボードの消去を行っています。
ソースコードの例は、「8. マルチボードを消去」を参照してください。