|
//原因:没有设置IMOnKeysList导致错误。
//修正:
---------------------------------------------------------------
//在HZinitXIM() 最后面加入:
if ((on_keys=(XIMTriggerKeys *)malloc(sizeof(XIMTriggerKeys)))==NULL)
{
fprintf(stderr, "Can't allocate\n");
exit(1) ;
}
on_keys->count_keys = sizeof(Trigger_Keys)/sizeof(XIMTriggerKey) - 2 ;
on_keys->keylist = Trigger_Keys;
IMSetIMValues (this_xims, IMOnKeysList, on_keys, NULL);
//好象原来就有.
---------------------------------------------------------------
//Trigger_Keys定义为:
/*
static XIMTriggerKey Trigger_Keys[] = {
{XK_space, ShiftMask, ShiftMask},
{0L, 0L, 0L}
};
*/
但是这样每开一个窗口,都需要用Shift + Space来激活输入法。
还不知道如何解决。
望指教。谢谢。 |
|