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,"剪切"在滚动矩形不执行任何操作。
备注
如果插入符号位于移动的 CWnd,ScrollWindow 自动隐藏插入符号阻止其清除然后还原插入符号,在滚动完成之后。相应地调整插入符号位置。
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