MFC对话框程序动态改变背景色,有两个难点...
原来是在对话框上有个控件,SetTimer后,在OnTimer的频率下,控制变化不同位置,
现在有触发事件(按键),想不同的按键刷不同的背景颜色,然后在一秒以后恢复到原来的颜色
我是用
CBrush lkwbrush(RGB(0,255,0));
CClientDC dc(this);
CRect rcWnd;
GetClientRect(rcWnd);
dc.FillRect(rcWnd,&lkwbrush);
Sleep(1000);
RedrawWindow();
来改变背景的颜色,但是有个问题,不知道为什么这样刷背景色会把控件也覆盖了...
应该如何解决把控件覆盖的问题?
第二个难点是:
是打算在一秒之后重画一次窗口,会把颜色恢复到原样,
不知道是做法不应该这样,
还是被OnTimer里的控件MoveWindow函数变化了位置把窗口重刷了,
背景色只是闪了一下就消失了。。。
程序应该怎么改?
谢谢解答!!