OnDraw和OnPaint的區別

2021-06-21 08:21:28 字數 360 閱讀 1680

(1)cview類是由cwnd類派生而來的,ondraw是cview類的虛函式,onpaint是cwnd的類成員函式,負責相應wm_paint訊息。

(2)一般是這樣:視窗發出乙個wm_paint訊息,onpaint函式響應這個訊息,然後這個函式再呼叫ondraw函式。雖然cview類中的ondraw函式是虛函式,但是我們自己生成的cview類的子類已經將這個函式過載了。

(3)假設我們在自己的view類中過載了onpaint函式,但是在函式中又沒有呼叫ondraw函式,那麼這個ondraw函式就完全沒有用了。

(4)我們一般用onpaint維護視窗的乙個客戶區,比如在視窗客戶區新增乙個背景;而在ondraw函式中維護檢視的客戶區,比如用滑鼠在客戶區畫圖。

OnPaint和OnDraw的區別

問題 我在檢視畫的圖象或者文字,當視窗改變後為什麼不見了?ondraw 和onpaint 兩個都是解決上面的問題,有什麼不同?答 ondraw 和onpaint 好象兄弟倆,因為它們的工作類似。至於不見了的問題簡單,因為當你的視窗改變後,會產生無效區域,這個無效的區域需要重畫。一般windows會傳...

OnPaint和OnDraw的區別

問題 我在檢視畫的圖象或者文字,當視窗改變後為什麼不見了?ondraw 和onpaint 兩個都是解決上面的問題,有什麼不同?答 ondraw 和onpaint 好象兄弟倆,因為它們的工作類似。至於不見了的問題簡單,因為當你的視窗改變後,會產生無效區域,這個無效的區域需要重畫。一般windows會傳...

OnDraw和OnPaint函式的區別

cwnd onpaint 是cwnd類的成員函式,是wm paint 訊息的響應函式.當你呼叫cwnd updatewindow cwnd redrawwindow 時,或者視窗被其他視窗覆蓋,改變大小等事件就會產生wm paint 訊息.你可以在cwnd派生的子類中使用它.cview ondraw...