WEB开发网
开发学院手机开发Symbian 开发 Symbian (MAknEditingStateIndicator)得到输入法状... 阅读

Symbian (MAknEditingStateIndicator)得到输入法状态

 2010-02-03 16:29:00 来源:WEB开发网   
核心提示:有些时候我们需要得到输入法切换的状态.在更多的时间可能需要我们自己去绘制输入法.那么我们应该如何处理呢?今天我们总结一下这个技巧了!#include struct S_uid: public TUid{S_uid(int i){iUid = i;}};//可以用下面的方法得到输入法状态TInt C***Containe

有些时候我们需要得到输入法切换的状态.

在更多的时间可能需要我们自己去绘制输入法.

那么我们应该如何处理呢?

今天我们总结一下这个技巧了!

#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 [复制链接] [打 印]
赞助商链接