|
主题: 请教版主关于变量运算问题
|
黄海弄潮人
职务:普通成员
等级:1
金币:0.0
发贴:50
|
#12005/6/3 14:34:18
一段代码,欲用变量控制循环次数 第一帧 on exitframe me set i=1 end 第五帧 on exitframe me set i=i+1 if i<10 then go loop else go next endif end 运行后,进入死循环,不能跳出. 测试 ut i 变量i的值一直为1 将变量i定义为全局变量,结果依然. loop的循环并未指向第一帧,Dr对这样简单的变量也不支持吗? 请问 r中,变量传递运算如何实现? 麻烦版主测试一下,变量运算在任何程序里都应该很容易实现的,但为什么感觉DR里 变量不能参与运算呢?
|
我是小马
职务:普通成员
等级:3
金币:17.0
发贴:794
|
#22005/6/3 15:10:15
相关文件(rar): 点这儿打开这个代码应该是没有问题的,问题可能出现你的影片中根本没有marker,参考帮助中go loop和go next的解释: go loop:将播放头送到电影中的前一个标记点,如果当前帧没有标记的话会回到当前帧后面的一 个标记点进行播放,如果当前帧有标记点的话则在当前帧循环。 如果当前帧没有标记点则前往播放头右面的第一个标记点。 如果当前帧有标记点则在当前帧循环。 如果电影中不包括标记点则前往电影的第一帧。 go next命令;将播放头送到电影中下一个标记点。如果播放头的右边没有标记点的话,播放头将前往 电影中最后的一个标记点,如果电影中没有标记点的话,播放头将前往第一帧。
|
黄海弄潮人
职务:普通成员
等级:1
金币:0.0
发贴:50
|
#32005/6/3 18:19:59
我的marker一个设在第三帧,命名为a1,另一个设在第十二帧,命名为a2,没问题。 测试时,可见播放头在第三帧和第五帧之间不断循环,put i的结果总是1。 因为变量的结果不能递增,程序的结果是死循环,不断在第三帧和第五帧间循环 不能跳出。
|
黄海弄潮人
职务:普通成员
等级:1
金币:0.0
发贴:50
|
#42005/6/3 18:21:48
为排除软件的问题,在DR 9.0中做了测试,结果相同。
|
我是小马
职务:普通成员
等级:3
金币:17.0
发贴:794
|
#52005/6/3 23:50:39
这段程序在Director Mx2004测试没有问题,一切正常阿
|
黄海弄潮人
职务:普通成员
等级:1
金币:0.0
发贴:50
|
#62005/6/5 17:17:19
是我的软件问题吗?晕! 谢谢解答
|
黄海弄潮人
职务:普通成员
等级:1
金币:0.0
发贴:50
|
#72005/6/5 19:01:23
宇风多媒体解答:两处代码均加global i,问题解决,在DR8.0及DR mx中均可通过。
按lingo的变量用法,全局变量声明一次即可,但代码中不重复声明,变量即不参与运算.在DR 2004中可以正常运算的原因也许是DR 2004中已经解除了这个BUG.....
感谢斑竹关注
|
我是小马
职务:普通成员
等级:3
金币:17.0
发贴:794
|
#82005/6/5 21:12:33
二楼的例子中已经给出了详细的代码! 而且你自己还说了将i定义为全局变量,还以为你明白了全局变量使用之前需要先声明哦 黄海弄潮人在上个帖子中说 引用: 宇风多媒体解答:两处代码均加global i,问题解决,在DR8.0及DR mx中均可通过。
按lingo的变量用法,全局变量声明一次即可,但代码中不重复声明,变量即不参与运算.在DR 2004中可以正常运算的原因也许是DR 2004中已经解除了这个BUG.....
感谢斑竹关注
|
Super ChiCk
职务:版主
等级:5
金币:15.0
发贴:3502
|
|
黄海弄潮人
职务:普通成员
等级:1
金币:0.0
发贴:50
|
#102005/6/6 15:26:22
二楼的答案好像是在2004中的,DR 8.0和DR MX中均不能运行。
|