×
Namespaces

Variants
Actions
Revision as of 11:29, 17 August 2007 by Technical writer 2 (Talk)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Archived:Applying actions on list box items using Symbian C++

From Nokia Developer Wiki
Jump to: navigation, search


Subject:

Applying actions on list box items

TSS000647

 

Platform(s): Device(s), SW version(s):
S60 1st Edition
S60 2nd Edition and FP1, FP2, FP3
S60 3rd Edition and FP1
 

Category:

Symbian C++

Subcategory:

UI, UI components

Description:

Description:
Below is a code snippet demonstrating how to apply actions on a list box item selected by the user.
The code to create a simple list box can be obtained from the link below:
http://wiki.forum.nokia.com/index.php/How_to_create_a_simple_listbox
It is possible to apply any actions (e.g., displaying a popup or a dialog) by catching key events for a list box that currently has keyboard focus. This is done in the OfferKeyEventL() function of the container class that owns the list box.
Solution:
    TKeyResponse CMyExampleAppView::OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType)
        {
        if(aType != EEventKey)
            {
            return EKeyWasNotConsumed;
            }
        switch(aKeyEvent.iCode)
            {
            case EKeyUpArrow:
            case EKeyDownArrow:
                {
                // Forward up and down key press events to the list box
                return iListBox->OfferKeyEventL( aKeyEvent, aType );
                }
            case EKeyOK: // display an information note when item is selected
                {
                _LIT(KFormatMessage, "Selected item: %d");
                TInt idx = iListBox->CurrentItemIndex();
                TBuf<32> message;
                message.Format(KFormatMessage, idx);
                CAknInformationNote* Note = new (ELeave) CAknInformationNote;
                Note->ExecuteLD(message);
                return EKeyWasConsumed;
                }
            default:
                break;
            }
       
        return EKeyWasNotConsumed;
        }
Also make sure to add this line
    AddToStackL( iAppView );
in AppUi’s ConstructL() to add the view/container to the control stack and receive OfferKeyEventL() calls.

Creation date:

May 10, 2007

Last modified:

-
113 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×