S60 Symbian C++ - botón de Salida no funciona
Pregunta
En mi Symbian S60, mi menú de Opciones funciona como se esperaba.Pero la Salida botón no hace nada.
Estoy desarrollando con Carburo y han utilizado el Diseñador de interfaz de usuario para agregar elementos al menú de opciones.
¿Alguien sabe cómo habilitar el botón de salir, ¿por qué no podría funcionar?
Gracias!
Solución
Son de manejo (en su appui::HandleCommandL
) identificadores de comandos EEikCmdExit
y EAknSoftkeyExit?
if ( aCommand == EAknSoftkeyExit || aCommand == EEikCmdExit )
{
Exit();
}
Otros consejos
¿Has mirado en el interior del método de la clase HandleCommandL( TInt aCommand )
de su aplicación AppUi
? Por ejemplo, en todos los proyectos de interfaz de usuario se crea con Carbide, la siguiente es automáticamente presente dentro del método HandleCommandL()
:
void MyAppUi::HandleCommandL( TInt aCommand )
{
TBool commandHandled = False;
switch ( aCommand )
{
default:
break;
}
if ( !commandHandled )
{
if ( aCommand == EAknSoftkeyExit || aCommand == EEikCmdExit )
{
Exit();
}
}
}
¿Qué recursos (botones programables layour) CBA está usando? R_AVKON_OPTIONS_EXIT
? está manejando los comandos de salida de los de cualquier otra manera? o estás traping la Exit()
llamar? ¿Está recibiendo incluso el código de la EEikCmdExit
? Si usted tiene la commandHandled
booleano , es se establece en EFalse
?
Los comandos se está manejando en mi vista principal
Así que lo cambié a este ...
void CMyContainerView::HandleCommandL( TInt aCommand )
{
TBool commandHandled = EFalse;
switch ( aCommand )
{
// ...
default:
break;
}
if ( !commandHandled )
{
AppUi()->HandleCommandL(aCommand);
}
}
Gracias a todos:)