主题:  director调用flash。

daily

职务:普通成员
等级:1
金币:0.0
发贴:11
注册:2002/2/20 15:56:05
#12002/2/20 16:07:19
我有几个SWF文件,想在DIRECTOR 8.5中调用,但有人提出当每个FLASH文件放到结束的这一帧时,能暂停2秒(SWF 文件没有暂停),而后再接下去播放下一个SWF文件。
在不改动FLASH源文件的情况下,能用DIRECTOR编程来实现吗?
谢谢!



rainy_5d

职务:普通成员
等级:2
金币:1.0
发贴:225
注册:2000/10/23 19:44:16
#22002/2/20 22:12:37
恰好前几天也做movie,遇到这个问题,也是不想再该fla,就用timeout来控制,效果还行。
property pFrame
property pFlashChannel
property pHowTime
property pLabel
-------------------------------
on beginsprite me
pFlashChannel=me.spriteNum
pHowTime=5000
pLabel="begin"
pframe=sprite(pFlashChannel).member.framecount
end
-------------------------------
on exitframe me
if sprite(pFlashChannel).frame=pframe then
timeOut("flashWait").new(pHowTime,#gotoMovieFrame ,me)
return()
end if
go to the frame
end
-------------------------------
on gotoMovieFrame me
timeout("flashwait").forget()
go frame pLabel
end



Pretender

职务:普通成员
等级:2
金币:10.0
发贴:510
注册:2001/5/11 21:19:46
#32002/2/20 23:04:43
这需要用LINGO吗?直接在节奏通道中加入停2秒不就得了吗?



daily

职务:普通成员
等级:1
金币:0.0
发贴:11
注册:2002/2/20 15:56:05
#42002/2/20 23:47:52
谢谢rainy和jarod2001 的热情答复!

我采用rainy提供的方法,但在运行时出现了一个错误提示,如下:
Script error: Zero parameters expected

if sprite(pFlashChannel).frame=pframe then
timeOut("flashWait".new(pHowTime,#gotoMovieFrame ,me)

我想是不是我在设计时出现了哪方面的不周?
烦请再指教。
谢谢!

jarod2001:
您所说的时间通道好象不能完全达到我的要求,因为它只对DIRECTOR中的FRAME进行控制,而不能对FLASH中的某帧进行延时的处理,不知我说得对与不对?请指教。



rainy_5d

职务:普通成员
等级:2
金币:1.0
发贴:225
注册:2000/10/23 19:44:16
#52002/2/21 21:33:31
把行为拖给flash sprite,请copy & paste另外不要忘记局柄后的me。



rainy_5d

职务:普通成员
等级:2
金币:1.0
发贴:225
注册:2000/10/23 19:44:16
#62002/2/21 21:45:45
不好意思,加一个判断。

property pFrame
property pFlashChannel
property pHowTime
property pLabel
property pTime
-------------------------------
on beginsprite me
pFlashChannel=me.spriteNum
pHowTime=2000
pLabel="begin"
pframe=sprite(pFlashChannel).member.framecount
end
-------------------------------
on exitframe me
if (pTime=VOID and sprite(pFlashChannel).frame=pframe) then
timeOut("flashWait").new(pHowTime,#gotoMovieFrame ,me)
pTime=1
return()
end if
go to the frame
end
-------------------------------
on gotoMovieFrame me
timeout("flashwait").forget()
go frame pLabel
end



daily

职务:普通成员
等级:1
金币:0.0
发贴:11
注册:2002/2/20 15:56:05
#72002/2/22 9:40:14
谢谢rainy的热情答复,我已按照你的思路解决了遇到的问题。
非常希望能和你交个朋友,不断地向你学习。谢谢!