CWnd::ScrollWindow

移动当前 CWnd 对象的工作区的内容。

void ScrollWindow(
   int xAmount,
   int yAmount,
   LPCRECT lpRect = NULL,
   LPCRECT lpClipRect = NULL 
);

参数

  • xAmount
    在组件单位指定将元素沿,水平滚动。 此参数必须是移动的负值左移。

  • yAmount
    在组件单位指定将元素沿,垂直滚动。 此参数必须是移动的负值。

  • lpRect
    指向 CRect 指定要移动的工作区的对象或 RECT 结构。 如果 lpRect 是 NULL,整个工作区移动。 如果光标矩形相交滚动矩形,脱字号重新定位。

  • lpClipRect
    指向 CRect 指定该矩形剪辑移动的对象或 RECT 结构。 此矩形内的仅位移动。 此矩形外位不受影响,即使它们在 lpRect 矩形。 如果 lpClipRect 是 NULL,"剪切"在滚动矩形不执行任何操作。

备注

如果插入符号位于移动的 CWndScrollWindow 自动隐藏插入符号阻止其清除然后还原插入符号,在滚动完成之后。 相应地调整插入符号位置。

ScrollWindow 成员函数找到的区域不会重新绘制,但是合并到当前 CWnd 对象的更新区域。 应用程序最终将收到通知它的 WM_PAINT 消息该区域需要重新绘制。 若要绘制找到的区域滚动同时完成,则会在调用 ScrollWindow后的 UpdateWindow 成员函数。

如果 lpRect 是 NULL,所有子窗口的位置在窗口可由 xAmount 指定的此数量和 yAmount,因此,任何在 CWnd 的无效(不漆)区域还会偏移。 当 lpRect 是 NULL时,ScrollWindow 更快。

如果 lpRect 不是 NULL,不会更改子窗口的位置,因此,在 CWnd 的无效的区域不会偏移。 若要防止更新问题,当 lpRect 不是 NULL后,调用 UpdateWindow 成员函数在调用 ScrollWindow之前重新绘制 CWnd

要求

Header: afxwin.h

请参见

参考

CWnd 类

层次结构图

CWnd::UpdateWindow

ScrollWindow