גלילה אזור הלקוח

הדרך הפשוטה ביותר כדי לגלול את התוכן של אזור הלקוח היא למחוק ולאחר מכן לצייר אותו מחדש. זוהי שיטת שיישום סביר לשימוש עם הודעות דיווח SB_PAGEUP SB_PAGEDOWN, SB_TOP, בדרך כלל דורשים תוכן חדש לגמרי.

עבור הודעות מסוימות, כגון SB_LINEUP ו- SB_LINEDOWN, לא כל התוכן צריך להימחק, מכיוון שחלק נשאר גלוי לאחר גלילה מתרחשת. הפונקציה ScrollWindowEx שומר על חלק מתוכן של אזור הלקוח, הזזת החלק שנשמר פרק שצוין ולאחר מכן מכין את השאר של אזור הלקוח מידע חדש על היצירה. משתמש ScrollWindowEx BitBlt הפונקציה כדי להעביר חלק מסוים של אובייקט הנתונים למיקום חדש בתוך אזור הלקוח. חלק כלשהו שלא נחשפו לאזור הלקוח (דבר אינו נשמר) תיפסל, נמחקים, וכתבה מתי הבא מתרחשת הודעת WM_PAINT.

ניתן להשתמש בפונקציה ScrollWindowEx כדי לא לכלול חלק של אזור הלקוח פעולת גלילה. פעולה זו שומרת פריטים עם תנוחות קבועות, כגון חלונות צאצאים, לנוע בתוך אזור הלקוח. מבטלת את אותו באופן אוטומטי תוקף את החלק של אזור הלקוח כדי לקבל את המידע החדש, כך היישום לא יצטרך לחשב אזורי החיתוך משלו. לקבלת מידע נוסף אודות המסיכה, ראה מסיכה.

בדרך כלל יישום גלילת התוכן של חלון בכיוון ההפוך המצוינת על-ידי פס הגלילה. לדוגמה, כאשר המשתמש לוחץ על מוט באזור מתחת לתיבת הגלילה, יישום גולל את האובייקט בחלון כלפי מעלה כדי לחשוף חלק האובייקט שנמצא מתחת לשורה.

באפשרותך גם לגלול לאזור מלבני באמצעות הפונקציה ScrollDC.