重繪控件中OnPaint、OnDraw、OnDrawItem和DrawItem的區別

=============================================================================================================
函數

OnPaint和OnDrawspa

OnPaint()是CWnd類的成員,負責響應WM_PAINT消息。.net

OnDraw()是CView類的成員,它不響應消息,不過它經過OnPaint()來調用OnDraw()。OnDraw()是虛函數,須要被重載。blog

=============================================================================================================get

OnDrawItem和DrawItemit

OnDrawItem()是CWnd類的成員,負責響應WM_DRAWITEM消息。當子控件有自繪屬性而且須要重繪它時,父窗口就調用OnDrawItem()。消息

DrawItem()是虛函數,須要在子控件類重載它。它是經過父窗口調用OnDrawItem()函數來調用子控件的DrawItem()。控件

 

=============================================================================================================
tar

OnPaintOnDrawItem
文章

OnPaint()和OnDrawItem()的範疇不一樣,OnPaint()能夠畫整個窗口,而OnDrawItem()只能畫窗口中的子控件。

=============================================================================================================

文章參考自:http://blog.csdn.net/liulina603/article/details/7645143

相關文章
相關標籤/搜索