הריסת חלון

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

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

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

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

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

אם החלון השמדתה הוא החלון הפעיל, הן הפעילים ומועברים הברית המוקד לחלון אחר. החלון שבו הופך לחלון הפעיל הוא החלון הבא, כפי שנקבע על-ידי צירוף המקשים alt + esc. החלון הפעיל חדש לאחר מכן קובע באיזה חלון מקבל מוקד לוח המקשים.

Index