当前位置:编程学习 > wap >>

取出对话框表单数据

为什么在做表单时点击了表单的保存命令  程序并没有进入到SaveFormDataL()函数中运行呢
TBool CDialogContactForm::SaveFormdataL()
{
CEikEdwin* nameEditor = STATIC_CAST(CEikEdwin*,ControlOrNull (EFormName));
if(nameEditor)
{
nameEditor->GetText(iName);//保存名字
}
CAknPopupFieldText* genderEditor = STATIC_CAST(CAknPopupFieldText*,ControlOrNull (EFormGender));
if(genderEditor)
{
iGender = genderEditor->CurrentValueIndex();
HBufC* text = genderEditor->CurrentValueTextLC();//保存姓名
CleanupStack::PopAndDestroy();
}
CEikEdwin* phoneNumberEditor = STATIC_CAST(CEikEdwin*,ControlOrNull (EFormPhoneNumber));
if(phoneNumberEditor)
{
nameEditor->GetText(iPhoneNumber);//保存电话号码
}


}
在view 类中调用 CDialogContactForm* iDialogForm;
iDialogForm=CDialogContactForm::NewL();
iDialogForm->ExecuteLD(R_CONTACTFORM_DIGLOG);

TBuf<30> bufName = iDialogForm->iName;
得到的bufName的值是L"\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\xDEDE\x018C\x0041\xDDE8\x389A\x1DF7\x0044\x6001"点击back后程序就退出了 
--------------------编程问答-------------------- Hi,

没进SaveFormDataL()大概是因为你没定义它,因为你写的函数是...dataL不是...DataL

TBool CDialogContactForm::SaveFormdataL() // data => Data

ExecuteLD中的D表示对话框运行完成后会被销毁,对于wait dialog来说,ExecuteLD()一执行完对话框就被删除了,因此iDialogForm变成了一个野指针,不能再用它访问form对象。

Regards

Ziteng Chen
--------------------编程问答-------------------- 谢谢你的帮助  !!   --------------------编程问答-------------------- ExecuteLD()一执行完对话框就被删除了  那么要怎样才取到里面的数据   然后设置成列表的内容显示到界面上
补充:移动开发 ,  Symbian
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,