aknexmenuokview.cpp
来自「symbian ui的 例子 初学者可以 好好看看,这个是培训的资料,应该比较宝」· C++ 代码 · 共 126 行
CPP
126 行
/* Copyright (c) 2005, Nokia. All rights reserved */
// INCLUDE FILES
#include <eikmenub.h>
#include <aknviewappui.h>
#include <avkon.hrh>
#include <AknExMenu.rsg>
#include "AknExMenuOkView.h"
#include "AknExMenuOkContainer.h"
#include "AknExMenu.hrh"
#include "AknExMenuappui.h"
// ========================= MEMBER FUNCTIONS ==================================
// -----------------------------------------------------------------------------
// CAknExMenuOkView::ConstructL()
// Symbian 2nd phase constructor can leave.
// -----------------------------------------------------------------------------
//
void CAknExMenuOkView::ConstructL( TInt aResId )
{
BaseConstructL( aResId );
iCoeEnv->ReadResource( iUpperMsg, R_AKNEXMENU_OK_UP_TEXT );
iCoeEnv->ReadResource( iLowerMsg, R_AKNEXMENU_OK_LOW_TEXT );
iCoeEnv->ReadResource( iTitleMsg, R_AKNEXMENU_OK_TITLE );
}
// -----------------------------------------------------------------------------
// CAknExMenuOkView::~CAknExMenuOkView()
// Destructor.
// -----------------------------------------------------------------------------
//
CAknExMenuOkView::~CAknExMenuOkView()
{
if ( iContainer )
{
AppUi()->RemoveFromStack( iContainer );
}
delete iContainer;
}
// -----------------------------------------------------------------------------
// CAknExMenuOkView::Id()
// returns OkView's Uid
// -----------------------------------------------------------------------------
//
TUid CAknExMenuOkView::Id() const
{
return KOkViewId;
}
// -----------------------------------------------------------------------------
// CAknExMenuOkView::HandleCommandL()
// Takes care of Command handling.
// -----------------------------------------------------------------------------
//
void CAknExMenuOkView::HandleCommandL( TInt aCommand )
{
TBuf<KLengthOfMsgStringInOkView> message;
switch ( aCommand )
{
case EEikCmdExit:
case EAknSoftkeyBack:
{
AppUi()->HandleCommandL( EAknCmdExit );
break;
}
case EAknExMenuCmdOkMenuItem1:
iCoeEnv->ReadResource( message, R_AKNEXMENU_OK_MENU_ITEM1 );
iEikonEnv->AlertWin( message );
break;
case EAknExMenuCmdOkMenuItem2:
iCoeEnv->ReadResource( message, R_AKNEXMENU_OK_MENU_ITEM2 );
iEikonEnv->AlertWin( message );
break;
default:
{
AppUi()->HandleCommandL( aCommand );
}
}
}
// -----------------------------------------------------------------------------
// CAknExMenuOkView::DoActivateL()
// Activate an AknView
// -----------------------------------------------------------------------------
//
void CAknExMenuOkView::DoActivateL( const TVwsViewId& /*aPrevViewId*/,
TUid /*aCustomMessageId*/,
const TDesC8& /*aCustomMessage*/ )
{
iContainer = new( ELeave ) CAknExMenuOkContainer;
iContainer->SetMopParent( this );
iContainer->ConstructL( ClientRect(), this );
static_cast<CAknExMenuAppUi*> ( AppUi() )->iTitlePane->SetTextL( iTitleMsg );
AppUi()->AddToStackL( *this, iContainer );
}
// -----------------------------------------------------------------------------
// CAknExMenuOkView::DoDeactivate()
// DeActivate an AknView
// -----------------------------------------------------------------------------
//
void CAknExMenuOkView::DoDeactivate()
{
if ( iContainer )
{
AppUi()->RemoveFromStack( iContainer );
}
delete iContainer;
iContainer = NULL;
}
// End of File
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?