滚动条
本部分包含有关用于滚动条的编程元素的信息。 窗口可以显示大于窗口工作区的数据对象,例如文档或位图。 当随 滚动条一起提供时,用户可以在工作区中滚动数据对象,以便查看超出窗口边框的对象部分。
综述
主题 | 内容 |
---|---|
关于滚动条 的 | 滚动条由每个端带有箭头按钮的阴影轴和一个 滚动框(有时称为拇指)在箭头按钮之间组成。 |
使用滚动条 | 创建重叠、弹出窗口或子窗口时,可以使用 CreateWindowEx 函数添加标准滚动条,并指定 WS_HSCROLL、WS_VSCROLL或两种样式。 |
功能
主题 | 内容 |
---|---|
EnableScrollBar |
EnableScrollBar 函数启用或禁用一个或两个滚动条箭头。 |
GetScrollBarInfo |
GetScrollBarInfo 函数检索有关指定滚动条的信息。 |
GetScrollInfo |
GetScrollInfo 函数检索滚动条的参数,包括最小和最大滚动位置、页面大小和滚动框(thumb)的位置。 |
GetScrollPos |
GetScrollPos 函数检索指定滚动条中滚动框(thumb)的当前位置。 当前位置是一个相对值,该值取决于当前滚动范围。 例如,如果滚动范围为 0 到 100,并且滚动框位于条形图中间,则当前位置为 50。
注意: 提供了 GetScrollPos 函数以实现向后兼容性。 新应用程序应使用 GetScrollInfo 函数。 |
GetScrollRange |
GetScrollRange 函数检索指定滚动条的当前最小和最大滚动框(thumb)位置。
注意: 仅提供 getScrollRange函数。 新应用程序应使用 GetScrollInfo 函数。 |
ScrollDC |
ScrollDC 函数水平和垂直滚动一个位矩形。 |
ScrollWindow |
ScrollWindow 函数滚动指定窗口工作区的内容。
注意: 提供了 ScrollWindow 函数以实现向后兼容性。 新应用程序应使用 ScrollWindowEx 函数。 |
ScrollWindowEx |
ScrollWindowEx 函数滚动指定窗口工作区的内容。 |
SetScrollInfo |
SetScrollInfo 函数设置滚动条的参数,包括最小和最大滚动位置、页面大小以及滚动框(thumb)的位置。 如果请求,该函数还会重新绘制滚动条。 |
SetScrollPos |
SetScrollPos 函数设置滚动框(thumb)在指定滚动条中的位置,如果请求,请重新绘制滚动条以反映滚动框的新位置。
注意: 提供了 SetScrollPos 函数以实现向后兼容性。 新应用程序应使用 SetScrollInfo 函数。 |
SetScrollRange |
SetScrollRange 函数设置指定滚动条的最小和最大滚动框位置。
注意: 提供了 SetScrollRange 函数以实现向后兼容性。 新应用程序应使用 SetScrollInfo 函数。 |
ShowScrollBar |
ShowScrollBar 函数显示或隐藏指定的滚动条。 |
消息
主题 | 内容 |
---|---|
SBM_ENABLE_ARROWS | 应用程序发送 SBM_ENABLE_ARROWS 消息,以启用或禁用滚动条控件的一个或两个箭头。 |
SBM_GETPOS | 发送 SBM_GETPOS 消息以检索滚动条控件滚动框的当前位置。 当前位置是一个相对值,该值取决于当前滚动范围。 例如,如果滚动范围为 0 到 100,并且滚动框位于条形图中间,则当前位置为 50。 应用程序不应直接发送此消息。 相反,它们应使用 GetScrollPos 函数。 窗口通过其 WindowProc 函数接收此消息。 实现自定义滚动条控件的应用程序必须响应这些消息,GetScrollPos 函数才能正常运行。 |
SBM_GETRANGE | 发送 SBM_GETRANGE 消息以检索滚动条控件的最小和最大位置值。 应用程序不应直接发送此消息。 相反,它们应使用 GetScrollRange 函数。 窗口通过其 WindowProc 函数接收此消息。 实现自定义滚动条控件的应用程序必须响应这些消息,GetScrollRange 函数才能正常工作。 |
SBM_GETSCROLLBARINFO | 应用程序发送以检索有关指定滚动条的信息。 |
SBM_GETSCROLLINFO | 发送 SBM_GETSCROLLINFO 消息以检索滚动条的参数。 应用程序不应直接发送此消息。 相反,它们应使用 GetScrollInfo 函数。 窗口通过其 WindowProc 函数接收此消息。 实现自定义滚动条控件的应用程序必须响应这些消息,GetScrollInfo 函数才能正常工作。 |
SBM_SETPOS | 发送 SBM_SETPOS 消息以设置滚动框(thumb)的位置,如果需要,请重新绘制滚动条以反映滚动框的新位置。 应用程序不应直接发送此消息。 相反,它们应使用 SetScrollPos 函数。 窗口通过其 WindowProc 函数接收此消息。 实现自定义滚动条控件的应用程序必须响应这些消息,SetScrollPos 函数才能正常工作。 |
SBM_SETRANGE | 发送 SBM_SETRANGE 消息以设置滚动条控件的最小和最大位置值。 应用程序不应直接发送此消息。 相反,它们应使用 SetScrollRange 函数。 窗口通过其 WindowProc 函数接收此消息。 实现自定义滚动条控件的应用程序必须响应这些消息,SetScrollRange 函数才能正常工作。 |
SBM_SETRANGEREDRAW | 应用程序将 SBM_SETRANGEREDRAW 消息发送到滚动条控件,以设置最小和最大位置值并重绘控件。 |
SBM_SETSCROLLINFO | 发送 SBM_SETSCROLLINFO 消息以设置滚动条的参数。 应用程序不应直接发送此消息。 相反,它们应使用 SetScrollInfo 函数。 窗口通过其 WindowProc 函数接收此消息。 实现自定义滚动条控件的应用程序必须响应这些消息,SetScrollInfo 函数才能正常运行。 |
通知
主题 | 内容 |
---|---|
WM_CTLCOLORSCROLLBAR | 当控件即将绘制时,WM_CTLCOLORSCROLLBAR 消息将发送到滚动条控件的父窗口。 通过响应此消息,父窗口可以使用显示上下文句柄设置滚动条控件的背景色。 窗口通过其 WindowProc 函数接收此消息。 |
WM_HSCROLL | 当窗口的标准水平滚动条中发生滚动事件时,WM_HSCROLL 消息将发送到窗口。 当控件中发生滚动事件时,此消息也会发送到水平滚动条控件的所有者。 窗口通过其 WindowProc 函数接收此消息。 |
WM_VSCROLL | 当窗口的标准垂直滚动条中发生滚动事件时,WM_VSCROLL 消息将发送到窗口。 当控件中发生滚动事件时,此消息也会发送到垂直滚动条控件的所有者。 窗口通过其 WindowProc 函数接收此消息。 |
结构
主题 | 内容 |
---|---|
SCROLLBARINFO |
SCROLLBARINFO 结构包含滚动条信息。 |
SCROLLINFO |
SCROLLINFO 结构包含由 SetScrollInfo 函数(或 SBM_SETSCROLLINFO 消息)设置的滚动条参数,或者由 GetScrollInfo 函数(或 SBM_GETSCROLLINFO 消息)检索)。 |
常数
主题 | 内容 |
---|---|
滚动条控件样式 | 若要使用 CreateWindow 或 CreateWindowEx 函数创建滚动条控件控件,请指定 SCROLLBAR 类、适当的窗口样式常量以及以下滚动条控件样式的组合。 某些样式创建使用默认宽度或高度的滚动条控件。 但是,调用 CreateWindow 或 CreateWindowEx 时,必须始终指定 x 坐标和 y 坐标以及滚动条的其他维度。 |