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

VC 连续播放一个文件夹里所有的SWF文件,  200分相送!解决方法

2012-01-31 
VC 连续播放一个文件夹里所有的SWF文件,  200分相送!步骤:菜单Component- ImportActiveXControl在ListBox

VC 连续播放一个文件夹里所有的SWF文件,  200分相送!
步骤:菜单Component-> Import       ActiveX       Control      
    在ListBox中选择ShockwaveFlash       然后点击Install      
    一步步走下去,在最后选择Compie      
    在ActiveX中就有了Shockwave       Flash控件了      
    在FormCreat事件写:      
    ShockwaveFlash1-> Movie= "d:\\bei\\index.swf ";      
    ShockwaveFlash1-> Play();      


这样可以播放单个,但怎么播放多个, 试了很久都不行;

如果再加ShockwaveFlash1-> Movie= "d:\\bei\\in.swf ";    

前面的不播放,只播放后面的


恳请写一个可以执行的代码,   如果可以达到效果,立刻送200分!


[解决办法]
http://tech.163.com/05/1008/14/1VI1OU8L00091589.html
希望这个对你有帮助
[解决办法]
首先建个string链表或是数组,将所有的文件路径保存下来。ShockwaveFlash1这个东西没用过,不过应该可以判断是否播放完吧,ShockwaveFlash1-> Play()是阻塞函数吗?如果是
for(int i=0;i <几个文件;++i)
{
ShockwaveFlash1-> Movie=string[i];
ShockwaveFlash1-> Play();
}
如果不是,先计算当前ShockwaveFlash1的播放时间,然后设置定时器,在定时器中播放下一个
[解决办法]
也没用过,不过估计ShockwaveFlash1-> Play()应该是异步的,不过它应该有函数判断时否放完了,放完了就播下一个吧
[解决办法]
参考:http://dev.yesky.com/413/2140413.shtml
[解决办法]
先用CFileFind finder;
finder.FindFile( "d:\\bei\\*.swf "))
用finder找到该目录下的所有swf文件,存成一个数组CString strpath[maxcount];
然后
bool isplay=true;
int i=0;
ShockwaveFlash1-> Movie=string[i];
ShockwaveFlash1-> Play();
设置个定时器SetTimer(1,100,NULL);
在OnTimer里面加上if(ShockwaveFlash1-> GetFrameNum()==-1&&isplay)
{
i++;
if(i> maxcount)
{
i=0;
isplay=false;
}
else
{
ShockwaveFlash1-> Movie=string[i];
ShockwaveFlash1-> Play();
}
}

热点排行