皆さんこんにちは、Saraです。
最近、TStringGridを使ったプログラムを作っているのですが、
日本語入力で、ちょっと納得いかないところがありまして・・・
お知恵を拝借できれば幸いです。
問題点:
例えば、1列目が日本語入力On、2列目がOff、3列目がOnという
StringGridを作ったとして、OnGetEditTextにてImeMode(imOpen)等を
使って、IMEを制御するとします。
このとき、1列目に入力するにあたりF2キーを押すなどして編集モード
にすれば、問題なく日本語入力できますが、いきなり日本語を入力しようと
すると、最初に押したキーだけが半角文字で入力されてしまいます。
そこで、OnSelectCellにて、
keybd_event(VK_F2, 0, 0, 0);
keybd_event(VK_F2, 0, KEYEVENTF_KEYUP, 0);
として、擬似的にF2キーを押して編集モードにすると、とりあえず日本語
入力が期待したとおりに動作するのですが、セルを移動すると直ぐに編集モード
になってしまい、左右の矢印キーにてセルの移動ができなくなります。
(できるようにすると、文字列の編集に矢印キーが使えなくなる)
(そもそも、やっていることが間違ってますかね・・・(^^; )
なにか妙手はないでしょうか?
|