在做项目时,对话框上面有一张背景图片,在对话框上放一个CSTATIC控件,这个控件可以做为提示信息,每个提示信息又不一样,比如某一时刻显示“系统开始启动”,另一时刻显示“系统正在启动中”,还有一时刻显示“系统成功启动”,如果它们相互之间显示的时间过快,则很有可能出现文字重叠现象,这个时候可用下面的程序解决:
CRect rectRefresh; // static控件所在位置
m_sProgressInfo.GetWindowRect(&rectRefresh); // m_sProgressInfo为静态字的关联变量,不能直接调用getclientrect
ScreenToClient(&rectRefresh);// 把屏幕坐标转换为客户区域
InvalidateRect(&rectRefresh);// 刷新这片区域
UpdateWindow(); // 更新窗口,可要可不要,不过如果文字显示过快时,如果没有这个,可能出现static控件的影子