Symbian 5th系统滚动条使用
2010-04-21 01:20:00 来源:WEB开发网貌似好久没有更新自己的博客了。很怀恋这些一直拥护我的博友们。工作的迁移,环境的变化一切都来的是不是有点太突然,但是还好有大伙的陪伴,使我的目标更明确。。。
再次谢谢各位博友了。
过来分享下可可哥的经验。
还是直接上代码吧。
class CMyControl: public CCoeControl, public MEikScrollBarObserver
{
public:// Constructors and destructor
~CMyControl();
static CMyControl* NewL(TRect aRect);
static CMyControl* NewLC(TRect aRect);
private:
CMyControl();
void ConstructL(TRect aRect);
void Draw( const TRect& aRect ) const;
virtual void HandlePointerEventL(const TPointerEvent& aPointerEvent);
TInt CountComponentControls() const;
CCoeControl* ComponentControl( TInt aIndex ) const;
void CreateScrollBar();
private:///MEikScrollBarObserver
void HandleScrollEventL(CEikScrollBar* aScrollBar,TEikScrollEvent aEventType );
protected:
void SizeChanged();
private:
CEikScrollBarFrame* iSBFrame;
TInt iScrollSpan;
TInt iScrollPos;
TBool iIsScrollDown;
};
// Implementation of scroll bar in custom control along with number of movement by scrollbar in one Drag.
// ScrollBar in symbian c++ ("Symbian c++").
void CMyControl::CreateScrollBar()
{
iScrollPos=-1;// initial scroll pos is -1 as 0 specify the first span/drag.
iScrollSpan=1;// scrollbar moves by one item at a time
iSBFrame=new ( ELeave ) CEikScrollBarFrame( this,this);
iSBFrame->SetScrollBarVisibilityL(CEikScrollBarFrame::EOff,CEikScrollBarFrame::EOn);
iSBFrame->CreateDoubleSpanScrollBarsL(ETrue, EFalse);// create scrollbar
iSBFrame->SetTypeOfVScrollBar(CEikScrollBarFrame::EDoubleSpan);//type of
更多精彩
赞助商链接