お世話になります。
前回、前々回はお世話になりました。
色々ググっても判らなかったので、質問させてください。
環境は、Win8、TurboDelphi2006 or C++BuilderXE2です。
IME(かな漢字変換)のコントロールをプログラム側でしたいと考えています。
変換モード、かな/ローマ字入力切り替えを行いたいのです。
以下の参考サイトまではたどりつけましたが、
それ以降がどうすればいいか全く判りません。
また、上記の希望のような制御は可能なのでしょうか?
よろしくお願いします。
http://msdn.microsoft.com/ja-jp/library/cc422019.aspx
http://madia.world.coocan.jp/cgi-bin/Vcbbs/wwwlng.cgi?print+200911/09110025.txt
下記のサイトで、DelphiでのIME制御の方法を見つけました。
http://hp.vector.co.jp/authors/VA015730/delphi/TipsTips.html
ローマ字入力/かな入力の判定までは、何とか出来ました。
もう少し踏ん張ってみます。
IMEのかな入力/ローマ字入力切り替えまでは、
何とか出来ました。
こちらのPC(win8、ATOK)では、
かな入力が9、ローマ字入力が25でした。
procedure TForm1.Button1Click(Sender: TObject);
var Imc:HIMC;
dwConversion : DWORD;
dwSentence : DWORD;
begin
Imc := ImmGetContext(edit1.Handle);
ImmGetConversionStatus(Imc,dwConversion,dwSentence);
ImmSetConversionStatus(Imc,25,IME_CMODE_ROMAN);
end;
引き続き、かな漢字切り替えの自動切り替えに挑戦してみます。
解決しました!
上記のままででOKだったみたいです。
これで、win8に対応し切れていない古いIMEを引き続き使えそうです(笑)。
ツイート | ![]() |