Windows Mobile下界面自适应输入法状态

文章原创,转载请注明,谢谢。

PPC中,输入法显示时,界面可供用户操作的空间变小。如何使得界面能自适应输入法状态呢?

SIPINFO si = {0};
si.cbSize = sizeof(si);
SHSipInfo(SPI_GETSIPINFO, 0, &si, 0);
BOOL bShow = si.fdwFlags&SIPF_ON;

此时,bShow为真则表示输入法处于显示状态,否则是隐藏。

SIPINFO是这样定义的:

typedef structtagSIPINFO
{
DWORD cbSize;
DWORD fdwFlags;
RECT rcVisibleDesktop;
RECT rcSipRect;
DWORD dwImDataSize;
void *pvImData;
} SIPINFO;

由rcVisibleDesktop和rcSipRect可以算出我们需要的界面大小。

dwImDataSize和pvimData的作用,没做深究,可能在做输入法的时候会用到?

你可能感兴趣的:(windows,mobile,Windows Mobile)