按挂机键后程序退到后台运行,按c键结束程序

来源:互联网 发布:ug8.0编程电子书 编辑:程序博客网 时间:2024/05/17 08:22

目的:当程序在前台运行时,按挂机键程序不退出,只是退到后台运行,程序在后台运行时,按c键能把程序结束

方法:在HandleWsEventL()中屏蔽挂机键KAknUidValueEndKeyCloseEvent,在值在avkon.hrh中定义,实践中发现8.0sdk的avkon.hrh没有定义KAknUidValueEndKeyCloseEvent,唯有手工添加定义#define  KAknUidValueEndKeyCloseEvent   0x101F87F0

测试:在3230,N70和E61i上测试通过

void CMyClientAppUi::HandleWsEventL(const TWsEvent &aEvent, CCoeControl *aDestination)
{
 switch (aEvent.Type())
 {
 case KAknUidValueEndKeyCloseEvent:
 break;
 default:
 CAknAppUi::HandleWsEventL(aEvent, aDestination);
 }
}
// ----------------------------------------------------
// CPocoClientAppUi::HandleCommandL(TInt aCommand)
// takes care of command handling
// ----------------------------------------------------
//
void CMyClientAppUi::HandleCommandL(TInt aCommand)
{
 switch ( aCommand )
 {
 case EEikCmdExit:
  {
   Exit();     
   break;
  }
  // TODO: Add Your command handling code here
  
 default:
  break;     
 }
 
}