CScrollView

Клас CScrollView є CView з прокручування можливості.

Ви можете впоратися, стандартний прокрутка себе в будь-який клас, отриманих від CView на заміщення відображається повідомлення OnHScroll і OnVScroll член функції. Але CScrollView додає такі можливості для своїх можливостей CView:

Ви можете впоратися коліщатка прокручування себе на заміщення відображається повідомлення OnMouseWheel і OnRegisteredMouseWheel член функції. Як вони CScrollView, ці методи підтримати рекомендованих поведінки для WM_MOUSEWHEEL, повідомлення повороту коліс.

Щоб скористатися автоматичну прокрутку, отримати ваш клас подання з CScrollView замість від CView. При поданні вперше створено, якщо потрібно обчислити розмір можна прокручувати перегляд, засновані на розмір документа, викликати функцію член SetScrollSizes від вашого перекрити або CView::OnInitialUpdate або CView::OnUpdate. (Ви повинні написати власний код запиту розмір документа. Для прикладу, перегляньте Підвищення переглядів в Visual C++ підручники.)

Заклик до член функція SetScrollSizes встановлює режимі відображення, всього розміри прокручування подання і кількість для прокрутки по горизонталі і вертикалі. Всі розміри є в логічних одиницях. Логічний розмір подання зазвичай розраховується від даних, які містяться в документі, але в деяких випадках ви можете захотіти вказати фіксований розмір. Приклади обох підходів знайти CScrollView::SetScrollSizes.

Ви вказуєте суми для прокрутки по горизонталі і вертикалі в логічних одиницях. За промовчанням якщо користувач натискає Бар прокручування вал за межами бігунок, CScrollView прокручується "сторінки". Якщо натиснути на стрілку в будь-якому кінці смуги прокручування, CScrollView прокручується "лінія". За промовчанням сторінка є 1/10 загальний розмір подання; лінія є 1/10 розміру сторінки. Змінити ці значення за замовчуванням, передаючи нестандартних розмірів в SetScrollSizes функції члена. Наприклад, може встановити розмір по горизонталі деякі частку ширину загальний розмір і розмір по вертикалі на висоту рядка поточного шрифту.

Замість того, щоб прокручування, CScrollView можете автоматично масштабувати подання до розміру вікна. У цьому режимі подання має немає смуг прокрутки та логічні подання розтягується або зменшили точно вміщувалася у вікні клієнтської області. Щоб використовувати цю можливість масштабування fit, називають CScrollView::SetScaleToFitSize. (Зателефонувати або SetScaleToFitSize або SetScrollSizes, але не обидва.)

Раніше в OnDraw називається функція-член вашої похідні подання класу, CScrollView автоматично налаштовує проекції походження для CPaintDC пристрій контексті об'єкт, який вона проходить доOnDraw.

Щоб налаштувати проекції походження для прокрутки вікна, CScrollView має перевагу над CView::OnPrepareDC. Це налаштування є автоматичним для контексту CPaintDC пристрій, що передає CScrollView OnDraw , але ви повинні викликати CScrollView::OnPrepareDC себе за будь-яких інших контекстах пристрій використовується, наприклад, CClientDC. Ви можете змінити CScrollView::OnPrepareDC , щоб встановити пера, колір тла та інші графічні атрибути, але називати базовий клас для масштабування.

Смуги прокручування можуть відображатися в трьох місцях по відношенню до подання, як показано у таких випадках:

Щоб отримати додаткові відомості про використання CScrollView, перегляньте Перегляду документа/архітектура теми і Отримані подання класи в Visual C++ програміста керівництво.

# включити lt;afxwin.h>

|&Nbsp членів класу ; Базовий клас | Ієрархічна діаграма

Зразок  MFC зразок DIBLOOK

Дивіться також CView, CSplitterWnd

Index