一般必须先定义StatusPane:
CEikStatusPane *sp = StatusPane();
iTitlePane = static_cast<CAknTitlePane*>
( sp->ControlL( TUid::Uid( EEikStatusPaneUidTitle) ) ) ;
iNaviPane = static_cast<CAknNavigationControlContainer*>
( sp->ControlL( TUid::Uid( EEikStatusPaneUidNavi ) ) );
iDecoratedTabGroup = iNaviPane->ResourceDecorator();
if ( iDecoratedTabGroup )
{
iTabGroup = static_cast<CAknTabGroup*> ( iDecoratedTabGroup->
DecoratedControl() );
}
然后在HandleKeyEventL中:
iTabGroup = static_cast<CAknTabGroup*> ( iDecoratedTabGroup->
DecoratedControl() );
if ( iTabGroup == NULL )
{
return EKeyWasNotConsumed;
}
TInt active = iTabGroup->ActiveTabIndex();
TInt count = iTabGroup->TabCount();
建立索引和记数
之后便可以通过:
case EKeyLeftArrow:
if ( active > 0 )
{
active--;
iTabGroup->SetActiveTabByIndex( active );
ActivateLocalViewL( TUid::Uid( iTabGroup->
TabIdFromIndex( active ) ) );
}
break;
case EKeyRightArrow:
if( ( active + 1 ) < count )
{
active++;
iTabGroup->SetActiveTabByIndex( active );
ActivateLocalViewL( TUid::Uid( iTabGroup->
TabIdFromIndex( active ) ) );
}
break;
实现左右键切换。
CEikStatusPane *sp = StatusPane();
iTitlePane = static_cast<CAknTitlePane*>
( sp->ControlL( TUid::Uid( EEikStatusPaneUidTitle) ) ) ;
iNaviPane = static_cast<CAknNavigationControlContainer*>
( sp->ControlL( TUid::Uid( EEikStatusPaneUidNavi ) ) );
iDecoratedTabGroup = iNaviPane->ResourceDecorator();
if ( iDecoratedTabGroup )
{
iTabGroup = static_cast<CAknTabGroup*> ( iDecoratedTabGroup->
DecoratedControl() );
}
然后在HandleKeyEventL中:
iTabGroup = static_cast<CAknTabGroup*> ( iDecoratedTabGroup->
DecoratedControl() );
if ( iTabGroup == NULL )
{
return EKeyWasNotConsumed;
}
TInt active = iTabGroup->ActiveTabIndex();
TInt count = iTabGroup->TabCount();
建立索引和记数
之后便可以通过:
case EKeyLeftArrow:
if ( active > 0 )
{
active--;
iTabGroup->SetActiveTabByIndex( active );
ActivateLocalViewL( TUid::Uid( iTabGroup->
TabIdFromIndex( active ) ) );
}
break;
case EKeyRightArrow:
if( ( active + 1 ) < count )
{
active++;
iTabGroup->SetActiveTabByIndex( active );
ActivateLocalViewL( TUid::Uid( iTabGroup->
TabIdFromIndex( active ) ) );
}
break;
实现左右键切换。