2013-12-16 38 views
0

怎樣繪製滾動條上,以MFC ActiveX控件中,我使用的Visual Studio 2012 ....繪製滾動條到mfc activeX控件Visual Studio 2012(C++)..?

void CCircCtrl::OnDraw(CDC* pdc, const CRect& rcBounds, const CRect&) 
{ 
    CBrush* pOldBrush; 
    CBrush bkBrush(TranslateColor(GetBackColor())); 
    CPen* pOldPen; 
    CRect rc = rcBounds; 
    CFont* pOldFont; 
    CScrollBar cscrollbar; 
    TEXTMETRIC tm; 
    const CString& strCaption = InternalGetText(); 
    RECT scrollbarrect = {rcBounds.left,rcBounds.bottom-20,rcBounds.right,rcBounds.bottom}; 
    cscrollbar.Create(SBS_HORZ|WS_CHILD|WS_VISIBLE, scrollbarrect,this,NULL); 
    cscrollbar.SetScrollRange(0, 2048); 
    SCROLLINFO ScrollInfo; 
    ScrollInfo.cbSize = sizeof(ScrollInfo); 
    ScrollInfo.fMask = SIF_RANGE; 
    ScrollInfo.nMin = 0;     
    ScrollInfo.nMax = 1128;    
    ScrollInfo.nPage = 100;    
    ScrollInfo.nPos = 0;     
    ScrollInfo.nTrackPos = 0;   
    cscrollbar.SetScrollInfo(&ScrollInfo); 
    cscrollbar.ShowScrollBar(TRUE); 
    cscrollbar.EnableWindow(); 
    cscrollbar.EnableAutomation(); 

這是我要做的事,但問題是滾動條沒有任何問題,但圖紙它是無響應...

請幫助

回答

0

我認爲這is'nt可以滾動功能添加到一個ActiveX控件,如果它不支持它。

可能更容易創建一個具有滾動功能的新窗口,並將ActiveX控件放置在這個新的父窗口中。

+0

http://stackoverflow.com/questions/18483211/adding-scrollbar-to-an-activex-control-in-mfc?rq=1在這篇文章中,他們表明,這是可能的,我試圖自己和滾動條顯示當我測試它,但它沒有響應... – user2895970

+0

只是創建一個滾動條是一回事。將處理程序添加到WM_HSCROLL/WM_VSCROLL並對他們告訴你的內容作出反應... – xMRi

+0

這部分我也不知道.. – user2895970