BREW输入法适配问题:输入法界面与程序界面重绘覆盖重叠
SDK:3.1.5
手机:华为C7100
程序中处理的方式:
从程序的输入控件点击后先进入一个输入页面EditForm,由TextCtrl和MenuCtrl组成
在TextCtrl点击或按键时,则进入手机的输入法界面
问题:
点击进入输入法后,程序的界面也被触发进行重绘,结果老有程序界面重又叠在输入法界面上
程序中相关处理及情况:
1\创建EditForm时,相关设置如下
ITEXTCTL_SetActive(pMe->m_pText, TRUE);
ITEXTCTL_SetRect(pMe->m_pText, &rc);
ITEXTCTL_EnumModeInit(pMe->m_pText);
IMENUCTL_AddItem(pMe->m_pSoftKeyCtl, NULL, NULL, TEXTMENU_COMMAND_COMPLETE, toolKey1, NULL);
IMENUCTL_AddItem(pMe->m_pSoftKeyCtl, NULL, NULL, TEXTMENU_COMMAND_CANCEL, toolKey2, NULL);
ITEXTCTL_SetSoftKeyMenu(pMe->m_pText, pMe->m_pSoftKeyCtl);
ITEXTCTL_SetProperties(pMe->m_pText, TP_FRAME|TP_MULTILINE|TP_FIXSETRECT|TP_T9_MODE);
ITEXTCTL_SetMaxSize(pMe->m_pText, pMe->m_nMaxSize);
ITEXTCTL_SetInputMode(pMe->m_pText, AEE_TM_CURRENT);
if ( ptxt )
ITEXTCTL_SetText(pMe->m_pText, ptxt, WSTRLEN(ptxt));
2\跟踪LOG时:没有 EVT_DIALOG_INIT, EVT_DIALOG_START, EVT_DIALOG_END 这几个事件;
3\输入页面里的handleEvent已经将将消息先交到TextCtrl和MenuCtrl先处理过的
if ( IMENUCTL_HandleEvent(pMe->m_pSoftKeyCtl, eCode, wParam, dwParam) )
return TRUE;
if ( ITEXTCTL_HandleEvent(pMe->m_pText, eCode, wParam, dwParam) )
return TRUE;