You Are Here:

Community: Wiki

This page was last modified 12:55, 30 March 2009.

How to create a simple listbox

From Forum Nokia Wiki

Here is the code snippet to create a simple listbox:

In mmp file:

LIBRARY        avkon.lib 
LIBRARY        eikcoctl.lib 
LIBRARY        eikctl.lib
LIBRARY        bafl.lib

In the header file:

// FORWARD DECLARATION
class CEikColumnListBox;
// ...
 
class CMyAppContainer : public CCoeControl
    {
    // ...
 
    public: // New functions
 
        /**
         * Create the listbox.
         */
        void CreateListBoxL();
    
        /**
         * Initialize the listbox.
         */
        void InitListBoxL();
 
    private: // Data members
 
        /**
         * The listbox object
         * Owned by CMyAppContainer.
         */
        CEikColumnListBox* iListBox;
    };

In the cpp file:

#include <eikclb.h>   // for CEikColumnListBox 
#include <aknlists.h> // for CAknSingleStyleListBox
 
// ----------------------------------------------------------------------------
// CMyAppContainer::CreateListBoxL()
// Create the listbox.
// ----------------------------------------------------------------------------
//
void CMyAppContainer::CreateListBoxL()
    {
    //Delete the list box if already exists.
    if ( iListBox )
        {
        delete iListBox;
        iListBox = NULL;
        }
    
    // listbox instance
    iListBox = new (ELeave) CAknSingleStyleListBox();
    iListBox->ConstructL(this); 
    iListBox->SetContainerWindowL(*this); 
    
    // add scrollbars to listbox 
    iListBox->CreateScrollBarFrameL(ETrue); 
    iListBox->ScrollBarFrame()->SetScrollBarVisibilityL( 
        CEikScrollBarFrame::EOn, CEikScrollBarFrame::EAuto ); 
 
    const TPoint aPoint(0,0);
    const TSize aSize(180,150);
    
    //most important line , else the list box simply disappears
    iListBox->SetExtent(aPoint,aSize);
 
    //Fill list box with the data
    InitListBoxL();
        
    iListBox->ActivateL();
    iListBox->DrawNow();
    }
 
 
// ----------------------------------------------------------------------------
// CMyAppContainer::InitListBoxL()
// Initialize the listbox.
// ----------------------------------------------------------------------------
//
void CMyAppContainer::InitListBoxL()
    {
    // construct listbox item array 
    CDesCArray *itemList = new (ELeave) CDesCArrayFlat(KGranularityOfArray); 
 
    itemList->AppendL(_L("\tFirst item\t\t"));
    itemList->AppendL(_L("\tSecond item\t\t"));
 
    // set items and ownership 
    iListBox->Model()->SetItemTextArray(itemList); 
    iListBox->Model()->SetOwnershipType(ELbmOwnsItemArray); 
 
    iListBox->SetCurrentItemIndex(0);
    iListBox->SetFocus(ETrue);
    iListBox->HandleItemAdditionL();
    }


Other Related Links


Rate This

 
Bookmark this page: DeliciousDiggFacebookGoogleYahooStumbleUponRedditFurlTechnocratiMagnoliaTwitter  Share this page Share this page Print this Page Print this page Invite a friend Invite a friend
Email Newsletters Press Terms & Conditions Privacy Policy Sitemap Contact Us © 2009 Nokia 
RDF Facets: qdcZidentifierQSxhttpE3aE2fE2fwikiE2eforumE2enokiaE2ecomE2findeE78E2ephpE2fHowE5ftoE5fgetE5ftheE5fCurrentE5fOrientationX qdcZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qdcZtypeQUqfnTypeZCommunityContentQ qdcZtypeQUqfnTypeZE52esourceQ qdcZtypeQUqfnTypeZWebpageQ qdcZtypeQUqfnTypeZWikiContentQ qdcZtypeQUqmarsZManagedE52esourceQ qdcZtypeQUqwebZInformationE52esourceQ qdcZtypeQUqwebZPageQ qdcZtypeQUqwebZE52esourceQ qdcZtypeQUqrdfsZE52esourceQ qfnZtopicQUqfnTopicZseriesE5f60Q qfnZtypeQUqfnTypeZCommunityContentQ qfnZtypeQUqfnTypeZE52esourceQ qfnZtypeQUqfnTypeZWebpageQ qfnZtypeQUqfnTypeZWikiContentQ qfnZuserE5ftagQSxs60X qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX qrdfZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qrdfZtypeQUqfnTypeZCommunityContentQ qrdfZtypeQUqfnTypeZE52esourceQ qrdfZtypeQUqfnTypeZWebpageQ qrdfZtypeQUqfnTypeZWikiContentQ qrdfZtypeQUqmarsZManagedE52esourceQ qrdfZtypeQUqwebZInformationE52esourceQ qrdfZtypeQUqwebZPageQ qrdfZtypeQUqwebZE52esourceQ qrdfZtypeQUqrdfsZE52esourceQ
User Rating: qfnZuserE5FratingQNx5E2E0000X