WEB开发网
开发学院手机开发Symbian 开发 Symbian 中关于 ListBox 的编程使用 阅读

Symbian 中关于 ListBox 的编程使用

 2010-02-26 16:03:00 来源:WEB开发网   
核心提示:private:virtual void DrawActualItem(TInt aItemIndex, const TRect& aActualItemRect, TBool aItemIsCurrent, TBool aViewIsEmphasized, TBool aViewIsDimmed, TBool aIt

private:

virtual void DrawActualItem(TInt aItemIndex, const TRect& aActualItemRect, TBool aItemIsCurrent, TBool aViewIsEmphasized, TBool aViewIsDimmed, TBool aItemIsSelected) const;

public:

void SetIconArray(CArrayPtr* aIconArray);

TSize MaxIconSize() const;

private:

void DeleteIconArray();

void CalculateMaxIconSize();

private:

const CEikTextListBox& iListBox;

CArrayPtr* iIconArray;

TSize iMaxIconSize;

};

实现的代码中最重要的就是那个DrawActualItem方法负责具体的绘制工作,从它的参数表中足够得到绘制所需的信息,剩下的事情就是用SystemGc去绘制。

第二步是作一个自己的ListBox控件:

class CCustomListBox: public CEikTextListBox

{

public: // constructors

CCustomListBox();

void ConstructL(const CCoeControl* aParent, TInt aFlags = 0);

public: // from CEikTextListBox

virtual TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType);

private: // from CEikTextListBox

virtual void CreateItemDrawerL();

};

在它的CreateItemDrawerL()中创建成员iItemDrawer = new (ELeave) CCustomListItemDrawer(*this)。而OfferKeyEvent主要的作用是处理上下方向键。

上一页  1 2 3 

Tags:Symbian 关于 ListBox

编辑录入:coldstar [复制链接] [打 印]
赞助商链接