CScrollView这个类用于需要滚动条的场合。我们可以直接用向导生成,在选择视图类的基类时选择CScrollView即可。
如果我们的程序原来用的是CView类,此时想改成CScrollView类,需要稍微做一下修改。
利用ClassWizard,在View類別中,建立OnInitialUpdate( ) member function
void View::OnInitialUpdate()
{
CScrollView::OnInitialUpdate();
SetScrollSizes(MM_TEXT, CSize( 800, 600 ) );
}
在View.cpp中修改:
//IMPLEMENT_DYNCREATE(CView, CView)//原来的
IMPLEMENT_DYNCREATE(CView, CScrollView) //修改后的
//BEGIN_MESSAGE_MAP(CView, CView) //原来的
BEGIN_MESSAGE_MAP(CView, CScrollView)//修改后的
//{{AFX_MSG_MAP(CTest2View)
// NOTE - the ClassWizard will add and remove mapping macros here.
// DO NOT EDIT what you see in these blocks of generated code!
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
。
。
。
在中View.h中修改:
//class CTest2View : public CView //原来的
class CTest2View : public CScrollView //改后的
{
。。。
}
SetScrollSizes是用来改变滚动条范围的,而不是改变窗口大小。改变窗口大小用MoveWindow |