创建滚动条

来源:互联网 发布:vb基础入门教程 编辑:程序博客网 时间:2024/06/02 01:38

CFormView类窗体对话框的设置如下:

.h     : CtestF * pFormView;

          CRuntimeClass *pViewClass;

.cpp : CWnd * pWnd = NULL;         

           pWnd = DYNAMIC_DOWNCAST(CWnd,pViewClass->CreateObject());

           pFormView = DYNAMIC_DOWNCAST(CtestF,pWnd);

           pFormView->SetScrollSizes( MM_TEXT, CSize(600, 400) ); //设置尺寸

CFormView类窗体对话框的位置设置及显示:

          CRect rc;
          GetClientRect(&rc);
          pFormView->MoveWindow(rc.left,rc.top,rc.right - rc.left-100, rc.bottom -rc.top,TRUE);

         //pFormView->MoveWindow(0,0,0,0,FALSE);

 

 

MoveWindow

函数功能:改变指定窗口的位置和大小.对顶窗口来说,位置和大小取决于屏幕的左上角;对子窗口来说,位置和大小取决于父窗口客户区的左上角.对于Owned窗口,位置和大小取决于屏幕左上角.
函数原型:BOOL MoveWindow( HWND hWnd, int X, int Y, int nWidth, int nHeight, BOOL bRepaint );
参数
hWnd指定了窗口的句柄
x指定了CWnd的左边的新位置。
y指定了CWnd的顶部的新位置。
nWidth指定了CWnd的新宽度。
nHeight指定了CWnd的新高度。
bRepaint指定了是否要重画CWnd。如果为TRUE,则CWnd象通常那样在OnPaint消息处理函数中接收到一条WM_PAINT消息。如果这个参数为FALSE,则不会发生任何类型的重画操作。这应用于客户区、非客户区(包括标题条和滚动条)和由于CWnd移动而露出的父窗口的任何部分。当这个参数为FALSE的时候,应用程序必须明确地使CWnd和父窗口中必须重画的部分无效或重画。
MoveWindow给窗口发送WM_WINDOWPOSCHANGING,WM_WINDOWPOSCHANGED,WM_MOVE,WM_SIZE和WM_NCCALCSIZE消息。[1]

 

原创粉丝点击