比如直接在Form上,切换出输入法,打什么字,这个字就会显示在Form上,当然英文字母可以用OnKeyDown什么的判断,可汉字怎么办?

这么深奥一个问题,不给分,实在说不过去,可惜小弟发这个贴的时候,已经没分了,打算,第二天再加分吧,没想到csdn的加分制度是最少就加100,我没有100分呀,加不了。

Form上面加了组件倒是可以,但是你这样什么都不加就要他显示,还真的是没有办法

自己在点击的地方绘制一个“会闪”的光标,然后outtext就醒了:p

下面代码已经测试通过:

if(uMsg == WM_IME_CHAR)
{
//汉字的两个字节缓冲
unsigned char *CharZh = new unsigned char[3];

CharZh[0] = (unsigned char)((Message.WParam >> 8) & 0xFF);
CharZh[1] = (unsigned char)(Message.WParam & 0xFF);
CharZh[2] = '\0';

//这行代码是C++Builder的,在VC应该相应的方法.
AnsiString Str = AnsiString((char*)CharZh);

// Memo1->Lines->Add("Input Text = " + Str);

delete[] CharZh;
}