OnPaint

OnPaint

OnPaint是一種函式,在C++ 中,是WM_PAINT訊息的訊息處理函式,OnPaint()是CWnd的類成員,負責回響WM_PAINT訊息。

CWnd::OnPaint

afx_msg void OnPaint( );

說明:

當Windows或應用程式請求重畫應用程式視窗的一部分時,框架調用這個成員函式。WM_PAINT在調用UpdateWindow或RedrawWindow成員函式時發出。當設定了RDW_INTERNALPAINT標誌並調用RedrawWindow成員函式時,視窗可能會接收到內部重畫訊息。在這種情況下,視窗可能沒有更新區域。應用程式必須調用GetUpdateRect成員函式以確定視窗是否具有更新區域。如果GetUpdateRect返回0,則應用程式不應調用BeginPaint和EndPaint成員函式。

應用程式負責檢查是否需要內部重畫或更新,這可通過查看每條WM_PAINT訊息的內部數據結構來完成,因為一條WM_PAINT可能是由於一個無效區域或由於使用RDW_INTERNALPAINT標誌調用了RedrawWindow成員函式而引起的。

Windows只傳送一次內部WM_PAINT訊息。在通過UpdateWindow成員函式向視窗傳送了內部WM_PAINT訊息以後,將不會再向視窗傳送其它WM_PAINT訊息,直到再次使用RDW_INTERNALPAINT標誌調用了RedrawWindow成員函式。

相關詞條

相關搜尋

熱門詞條

聯絡我們