在C++中,特别是在画图程序中,我们要对屏幕进行刷新,此时要用到Invalidate()这个函数。
Invalidate()参数是一布尔型的值。在程序中关于Invalidate有三种用法:
(1)Invalidate(false)正常;
(2)Invalidate(true)出现刷屏;
(3)如果不用,那么每次打开文件将不能自动显示,可以手动更改窗口大小,那么就可以正常显示了。
分析如下:当参数为false时,客户区无效,引起重绘,但不擦除背景,所以我们可以看到我们的图像。当参数为true时,也引起重绘,我们可以看到自己的图像,但由于擦除背景以后才发生重绘,所以看到刷屏的现象。而不用的话就会一直显示背景,除非认为改变窗口或其他方式引发窗口重绘,显示图像。
一般情况Invalidate()和Updatewindow()是一起出现的。