Scroll Bar
이 섹션에는 스크롤 막대와 함께 사용되는 프로그래밍 요소에 대한 정보가 포함되어 있습니다. 창은 창의 클라이언트 영역보다 큰 문서나 비트맵과 같은 데이터 개체를 표시할 수 있습니다. 스크롤 막대가 제공되면 사용자는 클라이언트 영역에서 데이터 개체를 스크롤하여 창의 테두리를 넘어 확장되는 개체 부분을 볼 수 있습니다.
개요
항목 | 콘텐츠 |
---|---|
스크롤 막대 정보 | 스크롤 막대는 양 끝에 화살표 단추가 있는 음영 축과 화살표 단추 사이에 있는 스크롤 상자(엄지라고도 함)로 구성됩니다. |
스크롤 막대 사용 | 중첩, 팝업 또는 자식 창을 만들 때 CreateWindowEx 함수를 사용하고 WS_HSCROLL 또는 WS_VSCROLL(또는 둘 다) 스타일을 지정하여 표준 스크롤 막대를 추가할 수 있습니다. |
Functions
항목 | 콘텐츠 |
---|---|
EnableScrollBar | EnableScrollBar 함수는 하나 또는 두 스크롤 막대 화살표를 사용하거나 사용하지 않도록 설정합니다. |
GetScrollBarInfo | GetScrollBarInfo 함수는 지정된 스크롤 막대에 대한 정보를 검색합니다. |
GetScrollInfo | GetScrollInfo 함수는 최소 및 최대 스크롤 위치, 페이지 크기, 스크롤 상자(엄지)의 위치를 포함하여 스크롤 막대의 매개 변수를 검색합니다. |
GetScrollPos | GetScrollPos 함수는 지정된 스크롤 막대에서 스크롤 상자(엄지)의 현재 위치를 검색합니다. 현재 위치는 현재 스크롤 범위에 따라 달라지는 상대 값입니다. 예를 들어, 스크롤 범위가 0~100이고 스크롤 상자가 막대 중앙에 있는 경우 현재 위치는 50입니다. 참고: 이전 버전과의 호환성을 위해 GetScrollPos 함수가 제공됩니다. 새 애플리케이션은 GetScrollInfo 함수를 사용해야 합니다. |
GetScrollRange | GetScrollRange 함수는 지정된 스크롤 막대의 현재 최소 및 최대 스크롤 상자(엄지) 위치를 검색합니다. 참고: GetScrollRange 함수는 호환성을 위해서만 제공됩니다. 새 애플리케이션은 GetScrollInfo 함수를 사용해야 합니다. |
ScrollDC | ScrollDC 함수는 비트의 직사각형을 수평 및 수직으로 스크롤합니다. |
ScrollWindow | ScrollWindow 함수는 지정된 창의 클라이언트 영역 콘텐츠를 스크롤합니다. 참고: 이전 버전과의 호환성을 위해 ScrollWindow 함수가 제공됩니다. 새 애플리케이션은 ScrollWindowEx 함수를 사용해야 합니다. |
ScrollWindowEx | ScrollWindowEx 함수는 지정된 창의 클라이언트 영역 콘텐츠를 스크롤합니다. |
SetScrollInfo | SetScrollInfo 함수는 최소 및 최대 스크롤 위치, 페이지 크기, 스크롤 상자(엄지)의 위치를 포함하여 스크롤 막대의 매개 변수를 설정합니다. 또한 이 함수는 요청된 경우 스크롤 막대를 다시 그립니다. |
SetScrollPos | SetScrollPos 함수는 지정된 스크롤 막대에서 스크롤 상자(엄지)의 위치를 설정하고 요청 시 스크롤 막대를 다시 그려서 스크롤 상자의 새 위치를 반영합니다. 참고: 이전 버전과의 호환성을 위해 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 메시지는 스크롤 상자(엄지)의 위치를 설정하기 위해 전송되며 요청 시 스크롤 상자의 새 위치를 반영하도록 스크롤 막대를 다시 그립니다. 애플리케이션은 이 메시지를 직접 보내면 안 됩니다. 대신 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 좌표와 스크롤 막대의 다른 크기를 지정해야 합니다. |