스크롤 상자 위치 및 스크롤 범위

스크롤 상자의 위치를 나타내는 정수로 표현 그것은 가로 또는 세로 스크롤 막대 인지에 따라 스크롤 막대의 왼쪽 또는 위쪽 끝에 상대적입니다. 위치 스크롤 범위의 최소 및 최대 값 이내 여야 합니다. 예를 들어, 0-100의 범위와 스크롤 막대의 위치 50은 중간에 스크롤 막대 따라 균등 하 게 분산 하는 나머지 위치. 초기 범위는 스크롤 막대에 따라 달라 집니다. 표준 스크롤 막대가 0-100;의 초기 범위를가지고 스크롤 막대 컨트롤은 빈 범위 (최소 및 최대 값은 0 임), 컨트롤을 만들 때 명시적 범위를 제공 하지 않는 한. 언제 든 지 범위를 변경할 수 있습니다. 범위 값을 설정 하려면 SetScrollInfo 함수 및 GetScrollInfo 함수를 현재 범위 값을 검색할 사용할 수 있습니다.

응용 프로그램은 일반적으로 쉽게 스크롤할 수 데이터 개체에 해당 하는 값으로 스크롤 상자의 위치를 번역 하는 편리한 정수를 스크롤 범위를 조정 합니다. 예를 들어, 응용 프로그램이 한 번만 16 라인을 표시할 수 있는 창에서 텍스트 파일의 260 줄을 표시 해야 합니다, 세로 스크롤 막대 범위는 244 통해 1로 설정할 수 있습니다. 스크롤 상자 위치 1에 있는 경우 첫 번째 줄 창 상단에 있을 것입니다. 스크롤 상자 위치 244 경우 마지막 줄 (선 260) 창 맨 아래에 있을 것입니다. 응용 프로그램 최소 또는 최대값 보다 더 보다 작은 위치 값을 지정 하려고 하는 경우 최소 또는 최대 스크롤 범위 값 대신 사용 됩니다.

스크롤 막대에 대 한 페이지 크기를 설정할 수 있습니다. 페이지 크기를 현재 크기로 주어진 소유자 창의 클라이언트 영역에 들어갈 수 있는 데이터 단위 수를 나타냅니다. 예를 들어, 클라이언트 영역 16 줄의 텍스트를 저장할 수, 응용 프로그램 페이지 크기 16에 설정 것 이다. 시스템 페이지 크기 스크롤 범위 및 스크롤 샤프트 길이와 함께 사용 하 여 스크롤 상자 크기 설정. 스크롤 막대를 포함 하는 창 크기를 조정할 때마다 응용 프로그램 페이지 크기를 설정 하려면 SetScrollInfo 함수를 호출 해야 합니다. 응용 프로그램이 보내는 GetScrollInfo 함수를 호출 하 여 현재 페이지 크기를 검색할 수 있습니다.

스크롤 막대 범위 및 데이터 개체에 대 한 유용한 관계를 설정 하려면 응용 프로그램 조정 해야 합니다 범위 데이터의 크기 개체 변경 될 때마다.

사용자 이동 스크롤 막대에서 스크롤 상자를 스크롤 막대 스크롤 범위에 있는 정수 스크롤 상자 위치를 보고 합니다. 위치 최소 값 이면 스크롤 상자를 세로 스크롤 막대의 위쪽 이나 가로 스크롤 막대의 왼쪽 끝입니다. 스크롤 상자는 세로 스크롤 막대의 아래쪽 또는 가로 스크롤 막대의 오른쪽 끝에 위치 하는 것이 최대 값 경우,.

스크롤 막대를 표시할 수 있는 최대값 (즉, 최대 스크롤 위치) 보고서 페이지 크기에 따라 달라 집니다. 스크롤 막대가 페이지 크기가 1 보다 큰 경우 스크롤 위치가 최대값을 사용 하면 최대 범위 값 보다 작습니다. 최대 스크롤 위치를 계산 하려면 다음 수식을 사용할 수 있습니다.:

MaxScrollPos = MaxRangeValue-(PageSize-1) 
 

응용 프로그램은 스크롤 막대에서 스크롤 상자를 이동 해야 합니다. 사용자가 스크롤 막대의 스크롤에 대 한 요청, 있지만 스크롤 막대 스크롤 상자 위치를 자동으로 업데이트 되지 않습니다. 대신, 그것은 데이터를 스크롤하고 스크롤 상자 위치를 업데이트 해야 하는 부모 창에 요청을 전달. 응용 프로그램 SetScrollInfo 함수를 사용 하 여 스크롤 상자 위치; 업데이트 그렇지 않으면, 그것은 SetScrollPos 함수를 사용합니다. 스크롤 상자가 이동을 제어, 응용 프로그램 스크롤 상자 스크롤 되는 데이터에 대 한 가장 적합 한 단위로 이동할 수 있습니다.

 

Index