编辑框

编辑框使用的类:CEikGlobalTextEditor
头文件:eikgted.h

使用方法:

Code:
CEikGlobalTextEditor* iGKeyEd;
TBuf<128> iKeyText;
TResourceReader reader;
   iCoeEnv->CreateResourceReaderLC( reader, R_RESOURCE_EDITOR );   //从资源文件构造编辑框,资源见下面的定义
   iGKeyEd = new ( ELeave ) CEikGlobalTextEditor;
   iGKeyEd->SetContainerWindowL( *this );
   iGKeyEd->ConstructFromResourceL( reader );
   CleanupStack::PopAndDestroy();   // Resource reader

//设置编辑框的初始文本和位置,编辑框大小在资源中定义
TBuf<32> buf;
buf.Copy(_L("demo"));
iGKeyEd->SetTextL(&buf);
iGKeyEd->SetExtent( TPoint(5,2), iGKeyEd->MinimumSize() );
iGKeyEd->SetFocus(ETrue);
// iGKeyEd->SetReadOnly(ETrue);   //设置编辑框为只读

//使文字居中
   CParaFormat      paraFormat;
   TParaFormatMask paraFormatMask;
   paraFormatMask.SetAttrib( EAttAlignment );     // set mask
   paraFormat.iHorizontalAlignment = CParaFormat::ECenterAlign;
   iGKeyEd->ApplyParaFormatL( &paraFormat, paraFormatMask );
 
   iGKeyEd->GetText(iKeyText); //获取编辑框中的内容,保存到iKeyText中

RESOURCE GTXTED R_RESOURCE_EDITOR   //编辑框资源 
   {
     flags = EAknEditorFlagDefault;
     width = 53;
     height = 16;
     numlines = 1;
     textlimit= 1;
     fontcontrolflags = EGulFontControlAll;
     fontnameflags = EGulNoSymbolFonts;

//这里也可设置输入法
//    avkon_flags = EAknEditorFlagFixedCase |
                                   EAknEditorFlagNoT9 | EAknEditorFlagSupressShiftMenu;  //EAknEditorFlagSupressShiftMenu屏蔽切换输入法键
//     allowed_input_modes = EAknEditorNumericInputMode;
//     default_input_mode = EAknEditorNumericInputMode;
//     numeric_keymap = EAknEditorPlainNumberModeKeymap; 
   }

注意,要使编辑框正常显示,记得更改container的CountComponentControls和ComponentControl函数,正确处理控件数目和编辑框指针。另外,要使编辑框能正常接收按键事件,要显示调用编辑框的OfferKeyEventL函数,如下:

Code:
TKeyResponse CMobileGuardSetKeyContainer::OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType )
{
     return iGKeyEd->OfferKeyEventL( aKeyEvent, aType );
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值