国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Windows編程入門-無效區域和有效區域

2019-11-08 02:14:30
字體:
來源:轉載
供稿:網友
盡管窗口過程必須能夠在收到WM_PAINT消息是更新整個客戶區,但通常它只需要更新其中的一部分,最常見的是更新其中的一個矩形區域。最明顯的例子是當一個對話看覆蓋了客戶區的一部分時:當對話框被關閉時,只有先前被覆蓋的那個矩形部分需要重新繪制。需要重新繪制的部分被稱為“無效區域”或者“更新區域”。在客戶區中有一個無效區域將導致Windows在應用程序的消息隊列中放置一條WM_PAINT消息。只有當程序客戶區的一部分失效時,窗口處理過程才會收到WM_PAINT消息。Windows內部為每個窗口都保存了一個“繪制信息結構”。這個結構保存著一個可以覆蓋無效區域的最小矩形的坐標和一些其他信息。這個最小矩形被稱為“無效區域”。如果在窗口過程處理一條等候處理的WM_PAINT消息之前,客戶區中的另外一部分也失效了,那么Windows將計算出一個覆蓋這兩個失效部分的新的無效區域和無效矩形,并更新繪制信息結構中的數據。Windows不會再消息隊列中放置多條WM_PAINT消息。窗口過程在處理WM_PAINT消息時,在調用BeginPaint函數后,整個客戶區會變成有效的。程序也可以通過調用ValidateRect函數來使客戶區中的任意矩形變得有效。如果該函數調用結果是讓整個客戶區都有效,那么當前消息隊列中的WM_PAINT消息就會被刪除。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 天等县| 涟水县| 广平县| 渑池县| 陇南市| 尉氏县| 台东市| 胶南市| 石景山区| 弋阳县| 清水河县| 金坛市| 西城区| 岐山县| 洱源县| 临湘市| 凤冈县| 新闻| 西安市| 淄博市| 奉节县| 苍山县| 镇赉县| 万宁市| 贵阳市| 吉林省| 连州市| 水富县| 乌兰察布市| 基隆市| 台东市| 老河口市| 台江县| 茂名市| 乌兰察布市| 长阳| 孝义市| 顺平县| 南涧| 兴山县| 吉隆县|