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

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

Windows編程入門(mén)-WM_PAINT消息

2019-11-08 02:14:42
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

WM_PAINT消息在Windows編程中極其重要。當(dāng)窗口的客戶區(qū)的部分或者全部“無(wú)效”且必須“更新”時(shí),應(yīng)用程序?qū)⒌玫酱讼?。這也就意味著窗口必須被“重繪”。 大多數(shù)Windows程序在Win Main函數(shù)初始化過(guò)程中會(huì)在進(jìn)入消息循環(huán)之前調(diào)用UpdateWindow函數(shù)。Windows利用這個(gè)機(jī)會(huì)向窗口過(guò)程發(fā)送最初的WM_PAINT消息。這個(gè)消息通知窗口過(guò)程繪制客戶區(qū)。此后,窗口過(guò)程需要在幾乎任何時(shí)間都能處理新收到的WM_PAINT消息,而且能夠在必要時(shí)重繪整個(gè)客戶區(qū)。在以下任何一個(gè)事件發(fā)生時(shí),窗口過(guò)程都會(huì)收到一條WM_PAINT消息:

用戶移動(dòng)一個(gè)窗口,導(dǎo)致原來(lái)被遮蓋的部分窗口暴露出來(lái)。用戶調(diào)整窗口的大?。ó?dāng)窗口的類型設(shè)定為CS_HREDRAW和CS_VREDRAW值時(shí))。程序調(diào)用ScrollWindow或者ScrollDC函數(shù)滾動(dòng)客戶區(qū)。程序調(diào)用InvalidateRect或者InvalidateRgn函數(shù)顯式生成WM_PAINT消息。

在某些情況下。當(dāng)客戶區(qū)的一部分被臨時(shí)覆蓋時(shí),Windows會(huì)試圖保存被覆蓋的這部分,以便將來(lái)恢復(fù)時(shí)使用。這并不是每次都能成功。在以下情形,Windows有時(shí)會(huì)發(fā)送一條WM_PAINT消息:

Windows關(guān)閉一個(gè)覆蓋了部分窗口的對(duì)話框或消息框。下拉菜單被拉下然后收回。顯示提示信息。

在少數(shù)情況下,WINDOWS總是會(huì)保存被覆蓋部分的顯示內(nèi)容,然后再恢復(fù)。這些情況如下:

鼠標(biāo)指針再客戶區(qū)內(nèi)移動(dòng)。在客戶區(qū)內(nèi)拖動(dòng)圖標(biāo)。

處理WM_PAINT消息需要你改變對(duì)于視頻輸出的概念。你的程序應(yīng)該收集并保存所有用于繪制客戶區(qū)的信息,但是只在需要時(shí)才進(jìn)行繪制——當(dāng)收到WM_PAINT消息時(shí)。如果程序需要在其他時(shí)候更新客戶區(qū),可以強(qiáng)制Windows生成WM_PAINT消息。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 托克逊县| 分宜县| 巴马| 四子王旗| 旺苍县| 宁远县| 松溪县| 兴文县| 福清市| 五指山市| 凌源市| 朝阳县| 苗栗县| 陇南市| 赫章县| 澄迈县| 收藏| 汝阳县| 临潭县| 无极县| 红桥区| 博客| 英山县| 平舆县| 黄平县| 昭通市| 赫章县| 施秉县| 宜章县| 四会市| 中方县| 乌拉特前旗| 罗田县| 长沙市| 北票市| 仲巴县| 孟村| 开化县| 无棣县| 安乡县| 元朗区|