掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
設定したIMEを戻すには? (ID:46663)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
こんにちは。 いつもお世話になっております。 開発環境は、delphiXE3 enterprise(update2適用)、win7(sp1)、MSIME2010です。 以下のように、いろいろ参考にして、半角カナ無変換にしました。 procedure TForm1.Button1Click(Sender: TObject); var Imc : HIMC; dwConversion : Cardinal; dwSentence : Cardinal; begin //入力コントロールにフォーカス移動 Edit1.SetFocus; //IMEをオープン SetImeMode(Edit1.Handle, imOpen); //入力コンテキストを取得 Imc := ImmGetContext(Edit1.Handle); try //パラメータを設定 dwConversion := IME_CMODE_KATAKANA or IME_CMODE_NATIVE or IME_CMODE_JAPANESE; dwSentence := IME_SMODE_NONE; //IMEの状態を設定 ImmSetConversionStatus(Imc, dwConversion, dwSentence); finally //ImmGetContextしたら必ず解放する ImmReleaseContext(Edit1.Handle, Imc); end; end; これは、半角カナのテキストボックスenter時に書こうと思っています。 この半角カナのテキストボックスから、郵便番号や住所のテキストボックスに移動したとき、そのテキストボックスのIMEモードと一般でIMEをセットしようと考えています。 ImmGetConversionStatusを呼んだ後、取得したdwConversionとdwSentenceをImmSetConversionStatusに充てて読んでみたのですが、IMEが変わることはありませんでした。 IMEの状態を切り替えるにはどうすれば良いのでしょうか。 よろしくお願いします。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.