入力モードの自動設定

エディットコントロールにフォーカスが移ったときに、自動的に全角ひらがな入力に設定したいと思ったときは ありませんか?そこで今回は文字入力モード設定に関するテクニックを紹介したいと思います

ここでは、入力モードをローマ字入力のひらがな全角に設定する方法を紹介します。 最初に、ビルド->設定->リンク(VC++4.0の場合)とたどって、オブジェクト/ライブラリモジュールにImm32.libを 設定してください。プログラム部分は以下の通りです。

HIMC ime;
ime=ImmGetContext(memo);//memoはエディットコントロールなどのハンドル
ImmSetOpenStatus(ime,TRUE);
ImmSetConversionStatus(ime,IME_CMODE_ROMAN | IME_CMODE_FULLSHAPE | IME_CMODE_NATIVE,IME_SMODE_AUTOMATIC);
ImmReleaseContext(memo,ime);//使用後は解放する

命令の詳細については、私もいまいち分かっていないのですが(お恥ずかしい)、感覚的にはIMEのハンドルのような 物を取得し、変更して解放するといった感じなのだと思います。
ImmSetConversionStatusの引数を変更すれば、半角カタカナに設定するとか仮名入力にするといったこともできますので 詳しくはマニュアルを参照してください。

戻る