首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

InvalidateRect的使用有关问题

2012-04-14 
InvalidateRect的使用问题C/C++ codeBOOL InvalidateRect(   HWND hWnd, // handle of window with change

InvalidateRect的使用问题

C/C++ code
BOOL InvalidateRect(   HWND hWnd, // handle of window with changed update region   CONST RECT *lpRect, // address of rectangle coordinates   BOOL bErase // erase-background flag   );


这里CONST RECT *lpRect 如果不是NULL,而是一个客户区的一部分矩形的话,其数据可以怎么获得呢?

[解决办法]
BeginPaint可以得到
[解决办法]
GetClientRect
[解决办法]
你想更新哪块就invalidate哪块呗。
[解决办法]
通常用于代码作者决定窗口内需要刷新才能继续有效的子矩形区域,避免大面积刷新整个窗口带来性能问题引发窗口闪烁。
[解决办法]
C/C++ code
CRect rect;GetClientRect(hWnd, &rect);
[解决办法]
探讨

引用:

你想更新哪块就invalidate哪块呗。


invalidate是不是只有MFC有呀?我在Win32中编说我没有定义什么的额。。。

[解决办法]
探讨

引用:

C/C++ code

CRect rect;
GetClientRect(hWnd, &rect);


。。这个样子不是还是整个窗口里的内容都会被刷新吗。。。怎么养变为只刷一部分呢?

[解决办法]
自己定义一个rect
[解决办法]
探讨

引用:

引用:

引用:

你想更新哪块就invalidate哪块呗。


invalidate是不是只有MFC有呀?我在Win32中编说我没有定义什么的额。。。

InvalidateRect()是SDK中的,不是MFC的。CRec……

[解决办法]
探讨

引用:

自己定义一个rect


自己定义的话rect的范围也是要参照变量的吧,但是InvalidateRect要求的rect是const的,那样的话它的构造参数怎么可以是不确定的变量呢??
如果可以的话,可以举个例子吗?

热点排行