如何用vc++制作对话框中点击确定btn后显示动态图片 20

 我来答
weiyinwu
2012-02-02 · TA获得超过1540个赞
知道小有建树答主
回答量:1057
采纳率:50%
帮助的人:1140万
展开全部
动态图片一般是使用定时器让定时器固定时间进行更换,这样,图片看起来就是动态的。
在确定的OnOK()函数中
SetTimer(1,10,NULL);//开始计时器
在对话框中添加一个Picture控件,然后添加几个BITMAP资源,注意ID的连续性。IDB_BITMAP1~IDB_BITMAP3.这样,就可以动态地变化这三个图了。

添加WM_TIMER消息,在OnTimer()函数中使用
if(nIDEvent==1)
{
CBitmap hbit;
static UINT i=IDB_BITMAP1;
hbit.LoadBitmap(i);
m_Pic.SetBitmap((HBITMAP)hbit.GetSafeHandle());
i++;
if(i>IDB_BITMAP3) i=IDB_BITMAP1;
}
追问
谢谢     然后我还想链接音频,准备设置多个按钮控件对应不同音频,然后设一个暂停键,但是总是所有播放按钮对应相同歌曲,我不会改.....,另外暂停键我也不会设置.....求教
追答
音频的播放有很多种方法,一般比较简单是使用MCI来播放。以下代码供参考。
头文件应该包含以下的
#include "mmsystem.h"//导入声音头文件
#pragma comment(lib,"winmm.lib")//导入声音头文件库
播放代码
MCI_OPEN_PARMS openParms;
openParms.lpstrDeviceType="MPEGvideo";
openParms.lpstrElementName=m_SoundPath;//m_SoundPath就是播方的音乐的地址
mciSendCommand(NULL,MCI_OPEN,MCI_OPEN_ELEMENT | MCI_OPEN_TYPE | MCI_NOTIFY ,(DWORD) (LPVOID(&openParms)));//打开资源
m_wDeviceID=openParms.wDeviceID;
MCI_PLAY_PARMS playParms;
mciSendCommand(m_wDeviceID,MCI_PLAY,MCI_NOTIFY,(DWORD) (LPVOID(&playParms)));//播放
mciSendCommand(m_wDeviceID,MCI_STOP,NULL,NULL);//停止
//mciSendCommand(m_wDeviceID,MCI_CLOSE,MCI_NOTIFY,NULL);//关闭命令
何处淬吴钩
2012-02-15 · TA获得超过5044个赞
知道大有可为答主
回答量:2947
采纳率:50%
帮助的人:2404万
展开全部
if(nIDEvent==1)
{
CBitmap hbit;
static UINT i=IDB_BITMAP1;
hbit.LoadBitmap(i);
m_Pic.SetBitmap((HBITMAP)hbit.GetSafeHandle());
i++;
if(i>IDB_BITMAP3) i=IDB_BITMAP1;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
455175633
2012-02-10 · TA获得超过301个赞
知道小有建树答主
回答量:632
采纳率:0%
帮助的人:411万
展开全部
这种问题不应该来问的。。 ~! 你是学还是要别人帮你做?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式