mfc问题如何在一个窗口显示多
写的程序里需要点击按钮启用定时器循环显示图片形成动画效果,找到的例子上是先使用 for 循环加载位图,获取设备上下文,创建兼容DC,创建定时器,加载位图到兼容DC,利用 for 循环显示图片,(这里的循环显示图片是放在创建窗口后面的,作用是显示窗口就有图片显示在上面),在WM_TIMER里面的步骤是加载位图到兼容DC,循环显示位图(这里的作用是循环显示图片,达到了动画效果);
在WM_PAINT 里面的步骤是加载位图到兼容DC,循环显示位图(这里的作用是保证位图不被重绘掉)。
我的问题是如果在点击按钮以后播放动画跟上面的步骤是一样的,可是我的创建兼容DC是在创建窗口后面的(md...全部
写的程序里需要点击按钮启用定时器循环显示图片形成动画效果,找到的例子上是先使用 for 循环加载位图,获取设备上下文,创建兼容DC,创建定时器,加载位图到兼容DC,利用 for 循环显示图片,(这里的循环显示图片是放在创建窗口后面的,作用是显示窗口就有图片显示在上面),在WM_TIMER里面的步骤是加载位图到兼容DC,循环显示位图(这里的作用是循环显示图片,达到了动画效果);
在WM_PAINT 里面的步骤是加载位图到兼容DC,循环显示位图(这里的作用是保证位图不被重绘掉)。
我的问题是如果在点击按钮以后播放动画跟上面的步骤是一样的,可是我的创建兼容DC是在创建窗口后面的(mdc),别的位图显示也是在控件被单击后才显示的,先定义HDC xiaoDC,
然后xiaoDC=CreateCompatibleDC(NULL);
接着把位图加载到这个兼容DC里面,并显示,显示的目标 DC 是 mdc ,源 DC 是 xiaoDC ,在PAINT里面只用把 mdc 的内容显示在 hdc 上就可以了,
为什么播放动画的图片也这样显示就不可以呢?
我在CREATE消息里加载的那些图片,然后在点击控件事件后根据别的位图显示的方法定义了个 HDC xunhuanDC;然后 xunhuanDC=CreateCompatibleDC(NULL);
接着创建了个定时器,然后就是显示位图从 xunhuanDC 到 mdc 。
如果在TIMER里面也要加载位图到兼容DC里面然后显示位图从兼容 DC 到 mdc 的话,是不是也要像在控件里面那样先定义一个HDC,然后xunhuanDC=CreateCompatibleDC(NULL);这样呢?。
收起