Symbian (MAknEditingStateIndicator)得到输入法状态
2010-02-03 16:29:00 来源:WEB开发网有些时候我们需要得到输入法切换的状态.
在更多的时间可能需要我们自己去绘制输入法.
那么我们应该如何处理呢?
今天我们总结一下这个技巧了!
#include
struct S_uid: public TUid
{
S_uid(int i)
{
iUid = i;
}
};
//可以用下面的方法得到输入法状态
TInt C***Container::GetCurrentIndicatorState() const
{
MAknEditingStateIndicator * ei = CAknEnv::Static()->EditingStateIndicator() ;
if (!ei) return -1;
CAknIndicatorContainer *ic = ei->IndicatorContainer();
if (!ic) return -1;
if(ic->IndicatorState(S_uid(EAknNaviPaneEditorIndicatorPinyin) ))
{
//拼音输入法
return 2;
}
else if(ic->IndicatorState(S_uid(EAknNaviPaneEditorIndicatorLowerCase)))
{
//小写
return 4;
}
else if(ic->IndicatorState(S_uid(EAknNaviPaneEditorIndicatorUpperCase)))
{
//大写
return 5;
}
else if(ic->IndicatorState(S_uid(EAknNaviPaneEditorIndicatorTextCase)))
{
return 0;
}
else if(ic->IndicatorState(S_uid(EAknNaviPaneEditorIndicatorNumberCase)))
{
//数字
return 3;
}
else if(ic->IndicatorState(S_uid(EAknNaviPaneEditorIndicatorStroke) ))
{
//笔画
return 1;
}
return -1;
}
以上代码在N95,6120,N73上测试通过
Tags:Symbian MAknEditingStateIndicator 得到
编辑录入:coldstar [复制链接] [打 印]赞助商链接