myform.cpp

来自「《基于symbian手机开发与应用》一书的源代码」· C++ 代码 · 共 95 行

CPP
95
字号
// MyForm.cpp: implementation of the CMyForm class.
//
//////////////////////////////////////////////////////////////////////

#include "MyForm.h"
#include <dialog.rsg>
#include <eikcapc.h>

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CMyForm* CMyForm::NewL()
{
	CMyForm* self=new (ELeave)CMyForm();
	CleanupStack::PushL(self);
	self->ConstructL();
	CleanupStack::Pop();
	return self;
}
CMyForm::CMyForm()
{

}

CMyForm::~CMyForm()
{

}
void CMyForm::ConstructL()
{
	CAknForm::ConstructL();
}
TInt CMyForm::ExecuteLD(TInt aResourceId)
{
	iResourceId=aResourceId;
    return	CAknForm::ExecuteLD(aResourceId);
}
void CMyForm::PrepareLC(TInt aResourceId)
{
   iResourceId=aResourceId;
   CAknForm::PrepareLC(iResourceId);
}
TBool CMyForm::SaveFormDataL()
{
	if(ControlOrNull(EmyFormDlgCtrlIdEdwin))
	{
		GetEdwinText(iEdwin,EmyFormDlgCtrlIdEdwin);
		TPtrC edwinLabel=Line(EmyFormDlgCtrlIdEdwin)->GetFullCaptionText();
		iEdwinLabel=edwinLabel;
	}
	if(ControlOrNull(EmyFormDlgCtrlIdNumber))
	{
		iNumber=NumberEditorValue(EmyFormDlgCtrlIdNumber);
		TPtrC numberLabel=Line(EmyFormDlgCtrlIdNumber)->GetFullCaptionText();
		iNumberLabel=numberLabel;
	}
	return ETrue;
}
void CMyForm::DoNotSavedataL()
{
  if(ControlOrNull(EmyFormDlgCtrlIdEdwin))
	{
		SetEdwinTextL(EmyFormDlgCtrlIdEdwin,&iEdwin);
		Line(EmyFormDlgCtrlIdEdwin)->SetCaptionL(iEdwinLabel);
		Line(EmyFormDlgCtrlIdEdwin)->iCaption->CropText();
	}
	if(ControlOrNull(EmyFormDlgCtrlIdNumber))
	{
		SetNumberEditorValue(EmyFormDlgCtrlIdNumber,iNumber);
		Line(EmyFormDlgCtrlIdNumber)->SetCaptionL(iNumberLabel);
		Line(EmyFormDlgCtrlIdNumber)->iCaption->CropText();
	}
	
}
void CMyForm::PreLayoutDynInitL()
{
	CAknForm::PreLayoutDynInitL();
	SaveFormDataL();
}
TBool CMyForm::QuerySaveChangesL()
{
	TBool isAnsYes(CAknForm::QuerySaveChangesL());
	if(isAnsYes)
	{
		SaveFormDataL();
	}
	else
	{
		DoNotSaveFormDataL();
	}
	return isAnsYes;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?