SetScrollInfo 함수(winuser.h)
SetScrollInfo 함수는 최소 및 최대 스크롤 위치, 페이지 크기, 스크롤 상자(엄지)의 위치를 포함하여 스크롤 막대의 매개 변수를 설정합니다. 또한 이 함수는 요청된 경우 스크롤 막대를 다시 그립니다.
구문
int SetScrollInfo(
[in] HWND hwnd,
[in] int nBar,
[in] LPCSCROLLINFO lpsi,
[in] BOOL redraw
);
매개 변수
[in] hwnd
형식: HWND
fnBar 매개 변수의 값에 따라 스크롤 막대 컨트롤 또는 표준 스크롤 막대가 있는 창에 대한 핸들입니다.
[in] nBar
형식: int
매개 변수를 설정할 스크롤 막대의 형식을 지정합니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다.
값 | 의미 |
---|---|
|
스크롤 막대 컨트롤의 매개 변수를 설정합니다. hwnd 매개 변수는 스크롤 막대 컨트롤에 대한 핸들이어야 합니다. |
|
창의 표준 가로 스크롤 막대의 매개 변수를 설정합니다. |
|
창의 표준 세로 스크롤 막대의 매개 변수를 설정합니다. |
[in] lpsi
형식: LPCSCROLLINFO
SCROLLINFO 구조체를 가리키는 포인터입니다. SetScrollInfo를 호출하기 전에 구조체의 cbSize 멤버를 sizeof(SCROLLINFO)로 설정하고, fMask 멤버를 설정하여 설정할 매개 변수를 지정하며, 적절한 멤버에 새 매개 변수 값을 지정합니다.
fMask 멤버는 다음 값 중 하나 이상일 수 있습니다.
값 | 의미 |
---|---|
|
스크롤 막대의 새 매개 변수가 스크롤 막대를 불필요하게 만드는 경우 스크롤 막대를 제거하는 대신 사용하지 않도록 설정합니다. |
|
스크롤 페이지를 lpsi가 가리키는 SCROLLINFO 구조체의 nPage 멤버에 지정된 값으로 설정합니다. |
|
스크롤 위치를 lpsi가 가리키는 SCROLLINFO 구조체의 nPos 멤버에 지정된 값으로 설정합니다. |
|
스크롤 범위를 lpsi가 가리키는 SCROLLINFO 구조체의 nMin 및 nMax 멤버에 지정된 값으로 설정합니다. |
[in] redraw
형식: BOOL
스크롤 막대의 변경 내용을 반영하도록 스크롤 막대를 다시 그릴지 여부를 지정합니다. 이 매개 변수가 TRUE이면 스크롤 막대가 다시 그려지거나 다시 그려지지 않습니다.
반환 값
형식: int
반환 값은 스크롤 상자의 현재 위치입니다.
설명
SetScrollInfo 함수는 SCROLLINFO 구조체의 nPage 및 nPos 멤버에 지정된 값에 대한 범위 검사를 수행합니다. nPage 멤버는 값을 0에서 nMax - nMin +1로 지정해야 합니다. nPos 멤버는 nMin과 nMax - max( nPage– 1, 0) 사이의 값을 지정해야 합니다. 두 값이 범위를 벗어나면 함수는 범위 내에 있는 값으로 설정합니다.
fnBar 매개 변수가 SB_CTL hwnd 매개 변수로 지정된 창이 시스템 스크롤 막대 컨트롤이 아닌 경우 시스템은 SBM_SETSCROLLINFO 메시지를 창으로 보내 스크롤 막대 정보를 설정합니다(요청이 위치 또는 범위에만 해당되는 경우 시스템에서 메시지를 SBM_SETPOS 최적화하거나 SBM_SETRANGE 수 있음). 이렇게 하면 SetScrollInfo 가 스크롤 막대를 모방하는 사용자 지정 컨트롤에서 작동할 수 있습니다. 창이 SBM_SETSCROLLINFO (또는 최적화된 SBM_SETPOS 메시지 또는 SBM_SETRANGE 메시지를 처리하지 않으면 SetScrollInfo 함수가 실패합니다.
예를 들어 WM_PAINT 메시지를 사용하여 텍스트 스크롤을 참조하세요.
요구 사항
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | winuser.h(Windows.h 포함) |
라이브러리 | User32.lib |
DLL | User32.dll |
API 세트 | ext-ms-win-ntuser-misc-l1-2-0(Windows 8.1 도입) |
참고 항목
참조