CScrollView::SetScrollSizes

void SetScrollSizes ( int nMapMode, Размер sizeTotal, const SIZEamp; sizePage = sizeDefault, const Размер & sizeLine = sizeDefault );

Параметры

nMapMode

Режим отображения, для этого представления. Возможные значения:

Режим отображения Логическая единица Extends оси y...
MM_TEXT 1 пиксел Вниз
MM_HIMETRIC 0.01 мм Вверх
MM_TWIPS 1/1440 в Вверх
MM_HIENGLISH 0,001 в Вверх
MM_LOMETRIC 0,1 мм Вверх
MM_LOENGLISH 0.00 дюймов Вверх

Все эти режимы определяются Windows. Два стандартных Отображение режима, MM_ISOTROPIC и MM_ANISOTROPIC, не используются для CScrollView. Библиотека классов предоставляет функции-члена SetScaleToFitSize для масштабирования тем чтобы размер окна. Третий столбец в таблице выше описывает координатных ориентации.

sizeTotal

Общий размер представления прокрутки. Член cx содержит горизонтальную степени. Cy член содержит вертикальной плоскости. Размеры указаны в логических единицах. Cx и cy должны быть больше или равен 0.

sizePage

Горизонтальные и вертикальные сумм для прокрутки в каждом направлении в ответ на мыши щелкните полосу прокрутки вал. Член cx содержит горизонтальный размер. Cy член содержит вертикальный сумма.

sizeLine

Горизонтальные и вертикальные сумм для прокрутки в каждом направлении в ответ на мыши щелкните стрелки прокрутки. Член cx содержит горизонтальный размер. Cy член содержит вертикальный сумма.

Примечания

Вызовите SetScrollSizes , когда мнение готовится обновление. Называют его в переопределении функции-члена OnUpdate для настройки прокрутки характеристики, если, например, документ изначально, или когда он изменяет размер.

Обычно вы будете получать информацию из связанного документа по мнению путем вызова функции-члена документа, возможно под названием GetMyDocSize , что вы предоставляете вашим класса производного документа. В следующем коде показан этот подход:

SetScrollSizes (nMapMode, &GetDocument ()-gt;GetMyDocSize ())

Кроме того может иногда необходимо задать фиксированный размер, как показано в следующем коде:

SetScrollSizes (nMapMode, CSize (100, 100))

Необходимо задать режим отображения для любой из режимов отображения Windows, кроме MM_ISOTROPIC или MM_ANISOTROPIC. Если вы хотите использовать режим неограниченного картирования, вызовите функцию-член SetScaleToFitSize вместо SetScrollSizes.

Пример

void CScaleView::OnUpdate)
{
 nbsp; // ...
   / / Осуществить функции-члена GetDocSize () в / / ваш документ класса; Она возвращает CSize.
   SetScrollSizes (MM_LOENGLISH, GetDocument ()-> GetDocSize ());
   ResizeParentToFit ();   / / По умолчанию bShrinkOnly аргумент
   // ...
}

Обзор CScrollViewЧлены класса | Иерархическая схема

См. также CScrollView::SetScaleToFitSize, CScrollView::GetDeviceScrollSizes, CScrollView::GetTotalSize

Index