Visual C++. Описание стандартных классов - SetScrollSizes

ОГЛАВЛЕНИЕ


SetScrollSizes

void SetScrollSizes(int nMapMode, SIZE sizeTotal, const SIZE& sizePage = sizeDefault, const SIZE& sizeLine = sizeDefault);

Аргументы

  • nMapMode - режим отображения, установленный в данном объекте класса просмотра. Значения, которые может принимать данный аргумент перечислены в таблице П2.6. Таблица П2.6. Характеристики режимов отображения
    Режим отображения Логические единицы Направление по оси Y
    MM_TEXT 1 элемент изображения Вниз
    MM_HIMETRIC 0.01 мм Вверх
    MM_TWIPS 1/1440 дюйма Вверх
    MM_HIENGLISH 0.001 дюйма Вверх
    MM_LOMETRIC 0.1 мм Вверх
    MM_LOENGLISH 0.01 дюйма Вверх

    Режим отображения Логические единицы Направление по оси Y
    Все эти режимы определены в Windows. Класс CScrollView не использует два стандартных режима: MM_ISOTROPIC и MM_ANISOTROPIC. В библиотеке MFC предусмотрена функция SetScaleToFitSize, производящая масштабирование области представления к размерам рабочей области окна.
  • sizeTotal - общий размер прокручиваемой области представления. Переменная cx данного объекта структуры SIZE содержит ее размер по горизонтали, а переменная cy - ее размер по вертикали. Размеры определяются в логических единицах. Как переменная cx, так и переменная cy должны иметь значение большее либо равное нулю.
  • sizePage - шаг перемещения изображения по горизонтали или по вертикали при щелчке левой кнопкой мыши в полосе прокрутки за пределами бегунка. Переменная cx данного объекта структуры SIZE содержит шаг перемещения по горизонтали, а переменная cy - шаг перемещения по вертикали.
  • sizeLine - шаг перемещения изображения по горизонтали и по вертикали при щелчке левой кнопкой мыши по стрелкам полосы прокрутки. Переменная cx данного объекта структуры SIZE содержит шаг перемещения по горизонтали, а переменная cy - шаг перемещения по вертикали.

Описание

Функция SetScrollSizes вызывается при обновлении окна представления. Обычно она вызывается в функции OnUpdate для настройки параметров прокрутки, например при первом выводе документа на экран или при изменении его размеров. Обычно информация, на основании которой вычисляются размеры области представления, получается из связанного с данным представлением документа. Например, если размер документа возвращается функцией GetMyDocSize, вызов данной функции будет выглядеть следующим образом: SetScrollSizes(nMapMode, GetDocument()->GetMyDocSize()); В противном случае можно использовать фиксированный размер области представления, например: SetScrollSizes(nMapMode, CSize(100, 100)); В данной функции может использоваться любой режим отображения Windows, кроме MM_ISOTROPIC и MM_ANISOTROPIC. При использовании данных стилей вместо функции SetScrollSizes используется функция SetScaleToFitSize