Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсова_робота_СП.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
2 Мб
Скачать
☆

2.6 Повідомлення|сполучення| від смуги прокрутки

Горизонтальні смуги прокрутки функції батьківського вікна посилають |повідомлення|сполучення| WM_HSCROLL|, а вертикальні - повідомлення|сполучення| WM_VSCROLL|. При цьому молодше слово параметра wParam| містить|утримує| код досконалої|довершеної| дії, старше слово - поточну позицію повзун­ка|, а lParam| вказує|вказує| на дескриптор смуги прокрутки.

Наступна|слідуюча| таблиця перераховує імена код дій і пояснення до них:

Код дії

Пояснення дії

SB_ENDSCROLL

Віджата клавіша миші (кінець роботи із смугою прокрутки)

SB__LINELEFT

Зрушення вікна уздовж документа вліво (вгору) на одиницю

SB_LINERIGHT

Зрушення вікна уздовж документа управо (вниз) на одиницю

SB_PAGELEFT

Зрушення вікна уздовж документа вліво (вгору) на сторінку

SB_PAGERIGHT

Зрушення вікна уздовж документа управо (вниз) на сторінку

SBTHUMBPOSITION

Повзунок зупинився після плавного руху. Поточна позиція повзунка рав­на HIWORD(wParam)

SB_THUMBTRACK

Повзунок плавно рухається. Поточна пози­ція повзунка рівна HIWORD(wParam)

SB_TOP

Зрушення вліво (вгору) в початок документа

SB_BOTTOM

Зрушення управо (вниз) в кінець документа

2.7 Керування смугою прокрутки

Позиція nPos| повзунка може набувати значень із|із| заданого діа­пазона| [nMin|, nMax|]. Найлівіша для горизонтальної смуги або сама верхня для вертикальної смуги позиції повзунка відповідають міні­мальному| значенню nMin|. Відповідно в найправішому або самому нижньому положенні|становищі| значення позиції рівне nMax|.

Функції управління станом|достатком| смуг прокрутки не викликають|спричиняють| для смуг, створених третім способом. Якщо смуга прокрутки створена першим способом, то при виклику цих функцій першим аргументом вка­зують| дескриптор смуги. Інакше першим аргументом указують|вказують| деск­риптор| вікна, якому належить смуга перегляду|проглядати|. Другими аргу­ментом| завжди указують|вказують| вид смуги. Допустимі значення для другого аргументу перераховані в наступній|слідуючій| таблиці:

Значення

Вид смуги

SB_CTL

Смуга прокрутки. Першим аргументом є деск­риптор смуги прокрутки

SB HORZ

Стандартна горизонтальна смуга проглядання вікна

SB_VERT

Стандартна вертикальна смуга проглядання вікна

Для встановки діапазону смуги прокрутки викликають|спричиняють| функцію SetScroIlRange|: BOOL| SetScrollRange|( HWND| hwnd|, int| nBar|, int| nMin|, int| nMax|, BOOL| bRedraw|);

Вона встановлює мінімальне і максимальне значення позиції повзунка заданої смуги прокрутки. В разі|у разі| успішної установки повернуте значення відмінне від нуля|нуль-індикатора|.

При nMin=nMax| смуга зникає. Такій ситуації потрібно уникати при управлінні станом|достатком| смуг прокрутки. Аргумент bRedraw|, якщо не дорівнює нулю|нуль-індикатору|, вказує|вказує| на необхідність перемальовування смуги.