multiviewexamview.cpp

来自「国内著名嵌入式培训机构内部资料,内含一些实例代码,包括技术专题书籍」· C++ 代码 · 共 127 行

CPP
127
字号
/*
============================================================================
 Name        : CMultiViewExamView from MultiViewExamView.h
 Author      : Hou maoqing
 Version     :
 Copyright   : Copyright (c) Hou maoqing 2008
 Description : CMultiViewExamView implementation
============================================================================
*/

// INCLUDE FILES
#include  <aknviewappui.h>
#include  <avkon.hrh>
#include  <MultiViewExam.rsg>
#include  "MultiViewExamView.h"
#include  "MultiViewExamContainer.h" 

// ================= MEMBER FUNCTIONS =======================

// ---------------------------------------------------------
// CMultiViewExamView::ConstructL(const TRect& aRect)
// EPOC two-phased constructor
// ---------------------------------------------------------
//
void CMultiViewExamView::ConstructL()
	{
	BaseConstructL( R_MULTIVIEWEXAM_VIEW1 );
	}

// ---------------------------------------------------------
// CMultiViewExamView::~CMultiViewExamView()
// destructor
// ---------------------------------------------------------
//
CMultiViewExamView::~CMultiViewExamView()
	{
	if ( iContainer )
		{
		AppUi()->RemoveFromViewStack( *this, iContainer );
		}

	delete iContainer;
	}

// ---------------------------------------------------------
// TUid CMultiViewExamView::Id()
//
// ---------------------------------------------------------
//
TUid CMultiViewExamView::Id() const
	{
	return KViewId;
	}

// ---------------------------------------------------------
// CMultiViewExamView::HandleCommandL(TInt aCommand)
// takes care of view command handling
// ---------------------------------------------------------
//
void CMultiViewExamView::HandleCommandL(TInt aCommand)
	{   
	switch ( aCommand )
		{
		case EAknSoftkeyOk:
			{
			iEikonEnv->InfoMsg( _L("view1 ok") );
			break;
			}
		case EAknSoftkeyBack:
			{
			AppUi()->HandleCommandL(EEikCmdExit);
			break;
			}
		default:
			{
			AppUi()->HandleCommandL( aCommand );
			break;
			}
		}
	}

// ---------------------------------------------------------
// CMultiViewExamView::HandleClientRectChange()
// ---------------------------------------------------------
//
void CMultiViewExamView::HandleClientRectChange()
	{
	if ( iContainer )
		{
		iContainer->SetRect( ClientRect() );
		}
	}

// ---------------------------------------------------------
// CMultiViewExamView::DoActivateL(...)
// 
// ---------------------------------------------------------
//
void CMultiViewExamView::DoActivateL(
   const TVwsViewId& /*aPrevViewId*/,TUid /*aCustomMessageId*/,
   const TDesC8& /*aCustomMessage*/)
	{
	if (!iContainer)
		{
		iContainer = new (ELeave) CMultiViewExamContainer;
		iContainer->SetMopParent(this);
		iContainer->ConstructL( ClientRect() );
		AppUi()->AddToStackL( *this, iContainer );
		} 
   }

// ---------------------------------------------------------
// CMultiViewExamView::DoDeactivate()
// 
// ---------------------------------------------------------
//
void CMultiViewExamView::DoDeactivate()
	{
	if ( iContainer )
		{
		AppUi()->RemoveFromViewStack( *this, iContainer );
		}
	
	delete iContainer;
	iContainer = NULL;
	}

⌨️ 快捷键说明

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