绘制滚动条到mfc activeX控件Visual Studio 2012(c ++)..?

时间:2013-12-16 05:26:50

标签: c++ mfc

如何在mfc activex控件上绘制滚动条,我正在使用visual studio 2012 ....

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();

这就是我这样做的方法,但问题是滚动条没有任何问题但没有任何问题,但它没有响应......

请帮助

1 个答案:

答案 0 :(得分:0)

我认为如果ActiveX控件不支持它,则无法将滚动功能添加到ActiveX控件中。

可能更容易创建一个具有滚动功能的新窗口,并将ActiveX控件放在这个新的父窗口中。