• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            按下了關閉按鈕以后windows的處理步驟和消息流程

            1、當你按下了“關閉”按鈕或選取了“退出”菜單項之后,WM_CLOSE消息被發送給了應用程序的窗口處理過程函數。該函數對該消息的缺省處理僅為調用DestroyWindow()API函數,導致窗口被銷毀。
            2、當窗口的客戶區被銷毀的時候WM_DESTROY消息被發給了應用程序的窗口處理過程。程序員可以在此釋放他自己分配的與窗口客戶區相關的資源,而窗口過程函數缺省的處理僅為調用PostQuitMessage()函數,這將導致WM_QUIT消息被送進應用程序的消息隊列。
            3、隨后窗口的非客戶區(包括菜單欄、標題欄、狀態欄等)被銷毀,此時WM_NCDESTROY消息被發送給了應用程序的窗口過程。這個消息也是窗口過程處理的最后一個消息,程序員可以在這里釋放他自己分配的而一直沒有釋放的內存。使用了MFC創建的應用程序往往要在這個消息響應函數當中進行一些釋放內存和資源的工作。
            4、而應用程序的消息檢測函數GetMessage()一旦檢索到WM_QUIT消息,就會返回False,從而結束消息循環,并且讓應用程序的WinMain()函數返回,從而結束應用程序。因此應用程序的窗口處理過程是不可能處理到這條WM_QUIT消息的。
            5、綜上所述,如果我們是用SDK方法編寫應用程序而又不需要在程序結束的時候釋放用new及其他內存分配函數顯式分配的內存的話,我們完全可以直接通過向應用程序發送WM_QUIT消息讓程序退出。
            6、如果我們利用了MFC創建應用程序則最好通過發送WM_CLOSE消息讓應用程序結束。因為MFC往往要在最后時刻進行一些清理工作。

            posted on 2008-03-11 16:47 弱水一瓢 閱讀(755) 評論(0)  編輯 收藏 引用 所屬分類: MFC

            <2025年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            導航

            統計

            文章分類

            最新評論

            怡红院日本一道日本久久| 99精品久久久久久久婷婷| 漂亮人妻被中出中文字幕久久| 欧美日韩精品久久久免费观看| 久久99精品久久久大学生| 久久久久无码精品国产不卡| 99热精品久久只有精品| 亚洲国产精品无码久久98| 国产高潮国产高潮久久久91 | 国产成人精品综合久久久久 | 国产综合久久久久久鬼色| 色综合色天天久久婷婷基地| 亚洲欧洲日产国码无码久久99| 18岁日韩内射颜射午夜久久成人| 国产美女亚洲精品久久久综合| 国产精品嫩草影院久久| 日本强好片久久久久久AAA| 久久伊人精品青青草原日本| 久久99国产精品99久久| 亚洲人成网亚洲欧洲无码久久| 久久久久亚洲av毛片大| 久久精品国产精品青草| 国内精品人妻无码久久久影院| 久久久久久精品久久久久| 日产久久强奸免费的看| 国产巨作麻豆欧美亚洲综合久久| 99精品国产在热久久| 久久久久久毛片免费播放| 亚洲香蕉网久久综合影视| 久久久久久久精品成人热色戒| 久久最新免费视频| 欧美日韩成人精品久久久免费看| 99久久99久久精品国产片| 国产欧美一区二区久久| 国产成人久久精品二区三区| 青青青青久久精品国产| 国产精品99久久久久久www| 国产亚洲色婷婷久久99精品91| 伊人久久综合热线大杳蕉下载| 国产真实乱对白精彩久久| 日韩欧美亚洲国产精品字幕久久久 |