스크롤바에서 정보를 설정하거나 가져올 때 사용되는 구조체가 SCROLLINFO 이다. winuser.h 에 정의되어 있으며 구조는 다음과 같다. typedef struct tagSCROLLINFO { UINT cbSize; UINT fMask; int nMin; int nMax; UINT nPage; int nPos; int nTrackPos; } SCROLLINFO, FAR *LPSCROLLINFO; typedef SCROLLINFO CONST FAR *LPCSCROLLINFO; 위 구조체는 GetScrollInfo / SetScrollInfo 함수를 이용하여 현재 스크롤바의 상태나 정보를 얻어오거나 설정할 때 사용된다. cbSize : 위 구조체의 크기 fMask : 스크롤바의 속성을 결정짓는 플래그 SIF_ALL 모든 속성의 조합 SIF_DISABLENOSCROLL 스클로바 전체 비활성화 SIF_PAGE 페이지 사이즈 SIF_POS 스크롤 박스의 위치 SIF_RANGE 스크롤 범위의 최소/최대 SIF_TRACKPOS 드래깅 상태의 스크롤박스 현재 위치 nMin : 스크롤범위의 최소값 nMax : 스크롤 범위의 최대값 nPage : 전체 스크롤바의 크기에 대한 이동막대기(Thumb) 절대 크기값 nPos : 스크롤 박스의 현재값 nTrackPos : 드래깅 상태의 스크롤 박스의 현재값 여기서 살펴보면 나머지 다른 속성들은 직관적으로 이해할 수 있는 범위의 설명이다. 그런데 nPage라는 도대체 어떤 놈일까??? 이전 예제를 이용하여 알아보도록 하자. 다음 그림은 기본적인 값이 이전 예제와 동일하고 page값이 디폴트로 0인 샘플이다.
| |
2010년 10월 22일 금요일
[스크롤바-기초03] struct SCROLLINFO
피드 구독하기:
댓글 (Atom)
댓글 없음:
댓글 쓰기