Change softkeys dynamically (either right or left or both)
Article Metadata
The article shows how Softkeys (not CBA) can be changed dynamically. Either left or right or both can be changed.
Changing right softkey
Cba()->RemoveCommandFromStack(2, EBack);
Cba()->AddCommandToStackL(2,ECancel,_L("Cancel"));
Cba()->DrawDeferred();
So instead of handling EBack in HandleCommandL ECancel will be handled.
Similarly the left softkey can be changed by
Cba()->RemoveCommandFromStack(0, ESave);
Cba()->AddCommandToStackL(0,EOk,_L("Ok"));
Cba()->DrawDeferred();
Just remember
- 0 - Left softkey
- 2 - Right softkey
- Header File - #include <eikbtgpc.h>
- Link against - eikcoctl.lib
And you can also try this code for changing softkeys
Cba()->SetCommandL(0, EAknSoftkeyOk, _L("Ok"));
Cba()->DrawDeferred();


(no comments yet)