EXE示例程序下載:點擊這里下載(90K, WinZip壓縮文件) 陰影以下的部分就是需要更新的矩形區域,該區域就是我們所說的無效區域,正是因為此區域的存在,系統才會向消息隊列中放入一個WM_PAINT消息。 Windows內部為每個窗口都保留了一個繪圖結構(PAINTSTRUCT),它包含了包圍無效區域的最小矩形的坐標和一些其它信息,需要注重的是當窗口消息處理函數在處理WM_PAINT消息之前顯示區域中出現了另一個無效區域,那么Windows會計算出一個包圍兩個無效區域的新無效區域,并把這種變化保存在繪圖結構(PAINTSTRUCT)中,Windows是不會同時把多個WM_PAINT消息同時放到消息隊列中的。 窗口消息處理函數是通過調用InvalidateRect函數使窗口顯示區域內的矩形變為無效的,假如消息隊列中已經存在一個WM_PAINT消息,那么Windows將計算出新的無效矩形,在接收到WM_PAINT消息的時候,窗口消息處理函數可以獲得無效矩形的座標,通過調用GetUpdateRect,可以在任何時候獲得這些坐標。 新聞熱點
疑難解答