vc中利用shockwaveflash控件多个flash报错
vc中利用shockwaveflash控件多个flash出错
代码主要如下:flash是控件关联的变量
switch(i)
{
case 0:
flash.LoadMovie(0, "F:\\happy.swf");
flash.Play();
break;
case 1:
flash.LoadMovie(0,"F:\\angry.swf");
flash.Play();
break;
case 2:
flash.LoadMovie(0, "F:\\neutral.swf");
flash.Play();
break;
case 3:
flash.LoadMovie(0, "F:\\sad.swf");
flash.Play();
break;
default :
return ;
}
运行几次后不再播放了。。。。。。。。。
不好意思没有积分,只有这么多。。。。
------解决方案--------------------
1. 首选你这代码可以精简成字典方式,如:
char *FileNames[4] =
{
"F:\\happy.swf",
"F:\\angry.swf",
"F:\\neutral.swf",
"F:\\sad.swf"
};
if (i < 4 && i > -1)
{
flash.LoadMovie(0, FileNames[i]);
flash.Play();
}
2. 你这里的i值是从何而来?值有没有可能不是0~3?
代码主要如下:flash是控件关联的变量
switch(i)
{
case 0:
flash.LoadMovie(0, "F:\\happy.swf");
flash.Play();
break;
case 1:
flash.LoadMovie(0,"F:\\angry.swf");
flash.Play();
break;
case 2:
flash.LoadMovie(0, "F:\\neutral.swf");
flash.Play();
break;
case 3:
flash.LoadMovie(0, "F:\\sad.swf");
flash.Play();
break;
default :
return ;
}
运行几次后不再播放了。。。。。。。。。
不好意思没有积分,只有这么多。。。。
------解决方案--------------------
1. 首选你这代码可以精简成字典方式,如:
char *FileNames[4] =
{
"F:\\happy.swf",
"F:\\angry.swf",
"F:\\neutral.swf",
"F:\\sad.swf"
};
if (i < 4 && i > -1)
{
flash.LoadMovie(0, FileNames[i]);
flash.Play();
}
2. 你这里的i值是从何而来?值有没有可能不是0~3?