• <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>
            aurain
            技術(shù)文摘
            posts - 137,  comments - 268,  trackbacks - 0

            以下是對(duì)話框關(guān)閉時(shí)發(fā)送的不同消息:  
                    1)點(diǎn)擊OK按鈕:OnOk-WM_DESTROY  
                    2)   點(diǎn)擊Cancel按鈕:OnCancel-WM_DESTROY  
                    3)   點(diǎn)擊×按鈕:WM_CLOSE-ONCANCEL-WM_DESTROY  
                    4)   鍵盤ESC按鍵:OnCancel-WM_DESTROY  
                    5)調(diào)用EndDialog(IDCANCEL),直接到WM_DESTROY消息  
              這些方式都可以的,要是你的關(guān)閉沒有成功,那么一定是出現(xiàn)內(nèi)存泄漏,你需要在WM_DESTROY消息中釋放資源,應(yīng)為WM_DESTROY消息是所有銷毀方式都要發(fā)送的。

            WM_CLOSE:

              在系統(tǒng)菜單里選擇了“關(guān)閉”或者點(diǎn)擊了窗口右上角的“X”按鈕,你的窗口過程就會(huì)收到WM_CLOSE。DefWindowProc對(duì)WM_CLOSE的處理是調(diào)用DestroyWindow。當(dāng)然,你可以不讓DefWindowProc處理,而是自己處理,例如詢問用戶是否保存更改等。如果用戶選擇“取消”,你忽略此消息,那么程序照常運(yùn)行;如果用戶確認(rèn)要退出,你就調(diào)用DestroyWindow。


            WM_DESTROY:

              接下來,DestroyWindow完成窗口的清理工作,最后像窗口過程發(fā)送WM_DESTROY。對(duì)于WM_DESTROY,DefWindowProc不會(huì)處理。也就是說,你如果不處理這個(gè)消息,雖然你的窗口已經(jīng)銷毀,但進(jìn)程并不會(huì)結(jié)束。一般處理WM_DESTROY時(shí)都是釋放資源(例如申請(qǐng)的內(nèi)存等),然后調(diào)用PostQuitMessage。

             

            WM_QUIT:

              PostQuitMessage會(huì)發(fā)送WM_QUIT給消息隊(duì)列。注意,WM_QUIT永遠(yuǎn)不會(huì)到達(dá)窗口過程,因?yàn)镚etMessage得到WM_QUIT后就會(huì)返回FALSE,從而結(jié)束消息循環(huán),最后進(jìn)程結(jié)束,程序退出。

             

             

            假設(shè)使用者執(zhí)行HELLOWIN,并且使用者最終單擊了 Close按鈕,或者假設(shè)用鍵盤或鼠標(biāo)從系統(tǒng)菜單中選擇了 Close, DefWindowProc處理這一鍵盤或者鼠標(biāo)輸入,在檢測(cè)到使用者選擇了Close選項(xiàng)之后,它給窗口消息處理程序發(fā)送一條WM_SYSCOMMAND消息。WndProc將這個(gè)消息傳給DefWindowProc。DefWindowProc給窗口消息處理程序發(fā)送一條WM_CLOSE消息來響應(yīng)之。WndProc再次將它傳給DefWindowProc。DestroyWindow呼叫DestroyWindow來響應(yīng)這條WM_CLOSE消息。DestroyWindow導(dǎo)致Windows給窗口消息處理程序發(fā)送一條WM_DESTROY消息。WndProc再呼叫PostQuitMessage,將一條WM_QUIT消息放入消息隊(duì)列中,以此來響應(yīng)此消息。這個(gè)消息導(dǎo)致WinMain中的消息循環(huán)終止,然后程序結(jié)束。

             

            posted on 2009-03-11 22:46 閱讀(2560) 評(píng)論(1)  編輯 收藏 引用 所屬分類: vc

            FeedBack:
            # re: vc知識(shí)點(diǎn)(窗體的關(guān)閉)
            2009-03-12 08:54 | 擇日而亡

            <2008年6月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            293012345

            常用鏈接

            留言簿(17)

            隨筆分類(138)

            隨筆檔案(137)

            網(wǎng)絡(luò)開發(fā)

            最新隨筆

            搜索

            •  

            積分與排名

            • 積分 - 500428
            • 排名 - 37

            最新隨筆

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            欧洲性大片xxxxx久久久| 色偷偷偷久久伊人大杳蕉| 国产午夜精品理论片久久| 久久综合给合综合久久| 亚洲国产欧美国产综合久久| 久久精品天天中文字幕人妻| 伊人色综合久久天天| 性做久久久久久久久| 97久久精品无码一区二区| 久久久久久久久久免免费精品| 中文字幕人妻色偷偷久久| 99久久国产热无码精品免费久久久久| 久久笫一福利免费导航 | 久久久久久国产a免费观看黄色大片| 久久免费看黄a级毛片| 91久久精品无码一区二区毛片| 久久久久免费精品国产| 国产精品美女久久久免费| 青青青国产精品国产精品久久久久| 精品伊人久久久| 久久久久国产一区二区| 精品精品国产自在久久高清| 中文字幕人妻色偷偷久久| 亚洲精品无码专区久久同性男| 色综合久久综合网观看| 久久永久免费人妻精品下载| 国产精品中文久久久久久久| 久久人人爽人人爽人人片AV麻豆| 久久精品国产只有精品2020| 国产精品女同久久久久电影院| 精品国产乱码久久久久软件| 亚洲欧美日韩精品久久亚洲区| 久久久WWW成人免费毛片| 香蕉久久一区二区不卡无毒影院 | 国产精品久久自在自线观看| 久久综合狠狠综合久久综合88| 久久久久久综合网天天| 久久亚洲私人国产精品vA| 久久婷婷五月综合97色| 精品久久久噜噜噜久久久| 国产精品禁18久久久夂久|