ScrollWindowEx функція прокручується вміст області вікна вказаного клієнта.
int ScrollWindowEx ( HWND hWnd, / / ручка вікна прокруткиInt dx, / / кількість горизонтальна прокруткаInt dy, / / кількість вертикальної прокруткиКОНСТАНТА RECT* prcScroll, / / адреса структури з прокручування прямокутникКОНСТАНТА RECT* prcClip, / / адреса структури з кліпу прямокутникHRGNhrgnUpdate, / / ручка, щоб оновити областьLPRECTprcUpdate, / / адреса структури для оновлення прямокутникUINTпрапори / / прокручування прапори);
Значення | Значення |
---|---|
SW_ERASE | Стирає нещодавно включить регіоні шляхом відправлення повідомлення WM_ERASEBKGND вікна, якщо зазначені прапорцем SW_INVALIDATE. |
SW_INVALIDATE | Скасовуються регіону, визначені hrgnUpdate параметр після прокручування. |
SW_SCROLLCHILDREN | Прокручується всі дочірні вікна, які перетинаються прямокутник, вказаний параметр prcScroll . Windows дитини є прокручується по кількості пікселів, визначених dx і dy параметри. Система відсилає повідомлення WM_MOVE всі дочірні вікна, які перетинаються prcScroll прямокутник, навіть якщо вони не рухатися. |
SW_SMOOTHSCROLL | Windows NT 5.0 і більш пізніх: Використовувати плавну прокрутку свитки. Використати HIWORD прапори параметра вказати, скільки часу гладкою прокручування операції повинні прийняти. |
Якщо функцію виконано успішно, значення, що повертається, є SIMPLEREGION (прямокутні включить район), COMPLEXREGION (непрямокутних включить регіону; прямокутники, що перекриваються) або NULLREGION (немає включить область).
Якщо функцію не вдається, значення, що повертається, є помилка. Щоб отримати докладні відомості про помилку, зателефонуйте GetLastError.
Якщо SW_INVALIDATE і SW_ERASE прапори не вказано, ScrollWindowEx не скасовує область, яка прокручується від. Якщо будь-який з цих прапори, ScrollWindowEx розриває цієї області. Область не оновлюється, поки застосунок дзвінки на UpdateWindow функції, дзвінки на RedrawWindow функція (зазначення прапор RDW_UPDATENOW або RDW_ERASENOW), або отримує WM_PAINT повідомлення від застосування черги.
Якщо у вікні стиль WS_CLIPCHILDREN, повернуті областей, вказаний на hrgnUpdate і prcUpdate представляють Загальна площа прокручувати вікно, який необхідно оновити, включаючи будь-які райони в windows дітей, які потребують оновлення.
Якщо вказано SW_SCROLLCHILDREN прапор, система не правильно оновити екрані якщо прокручується частиною дочірнього вікна. Частина прокручується дочірнього вікна, що лежить за межами прямокутника джерело не стирається і не належним чином перемальовується в її нові призначення. Щоб перемістити дитини windows, які не повністю лежать в межах прямокутника, вказаний на prcScroll, використовувати функцію DeferWindowPos . Курсор переміщено, якщо прапор SW_SCROLLCHILDREN має значення, а клавішна прямокутник перетинається прокручування прямокутник.
Всі вводу та виводу координат (для prcScroll, prcClip, prcUpdateта hrgnUpdate) визначають як координати клієнт, незалежно від того, чи вікно має клас стиль CS_OWNDC або CS_CLASSDC. За допомогою функції LPtoDP і DPtoLP для перетворення і з логічним координати, при необхідності.
Windows CE: Прапори параметр не підтримує SW_SCROLLCHILDREN.
Тільки один з dx і dy параметри можуть бути ненульовим.
nbsp; Windows &NT: вимагає 3.1 або пізнішої версії.
Windows:Вимагає Windows 95 або пізнішої версії.
Windows CE:Потрібна Версія 1.0 або пізнішу версію.
Заголовка:Оголошена в winuser.h.
Імпортувати бібліотеки:Використання user32.lib.
Прокрутіть барів огляд, функції смуги прокрутки, DeferWindowPos, DPtoLP, LPtoDP, RECT, RedrawWindow, UpdateWindow