invalidaterect函數(shù) Invalidate()這個函數(shù)有什么用?
Invalidate()這個函數(shù)有什么用?Void invalidate(bool ferase=true)此函數(shù)用于使整個窗口客戶端區(qū)域無效。無效的窗口客戶區(qū)意味著重繪。例如,如果被其他窗口覆蓋的窗
Invalidate()這個函數(shù)有什么用?
Void invalidate(bool ferase=true)
此函數(shù)用于使整個窗口客戶端區(qū)域無效。無效的窗口客戶區(qū)意味著重繪。例如,如果被其他窗口覆蓋的窗口成為前景窗口,則先前覆蓋的部分無效,需要重新繪制。Windows將WM放在應(yīng)用程序的消息隊列uuPaint消息中。MFC為窗口類提供WM,Onpaint是paint的消息處理功能。Onpaint負(fù)責(zé)重新繪制窗口。視圖類有一些例外。OnDraw函數(shù)在視圖類的OnPaint函數(shù)中調(diào)用,實(shí)際的重新繪制由OnDraw完成。當(dāng)參數(shù)bErase為true時,重繪區(qū)域中的背景將被擦除,否則,背景將保持不變。
它與updatewindow()的不同之處在于updatewindow()的功能是立即重新繪制窗口。在調(diào)用諸如invalidate之類的函數(shù)后,窗口不會立即重新繪制,這是由于WMèpaint消息的優(yōu)先級非常低。它需要等待消息隊列中的其他消息被發(fā)送,然后才能進(jìn)行處理。調(diào)用updatewindow函數(shù)使WM_u2;Paint直接發(fā)送到目標(biāo)窗口,從而立即重新繪制窗口。
MFC中的invalidate函數(shù)是什么意思???
無效(bool)會使窗口無效并導(dǎo)致窗口重新繪制。事實(shí)上,WM被發(fā)送到windowPaint消息。
參數(shù)表示:是否刪除窗口上的元素。例如,在窗口上繪制一條線或在窗口上輸出一個文本字符串。這些可以稱為窗口元素或數(shù)據(jù)