Flash 板


LINE

想请教关於for的用途 我有一个ActionScript 大致上的架构是 放入数个流水号命名的实体 每个实体个别独有的变数也使用流水号做对应 每个实体都侦听并执行 同一个function 然後function里面 则用event.currentTarget 做switch case 判断当侦听启动时该对哪个实体做什麽.. (也就是按钮1~10都走同的一function 但靠着switch 决定哪个按钮该动作) 当元件数量一多时 重复相似性极高的程式码相当碍眼 因此想用一个变数来决定实体放置的数量 用for来做简化程式码 让该变数决定for执行的次数 ... 侦听的部分 还有个别变数的运算都是OK的 原本1-20行 只要写一次 让for执行实体数量次数 决能够达成 但似乎没办法用for 宣告变数命名 var a1, a2, a3 //for(i=1;i<=3;i++){ it doesn't work } 查了一下资料发现C/C++不允许这种作法 那ActionScript3.0 行吗? 如果行该怎麽做? 这部分後来用矩阵的方法达成了. array(i) for(i=0;i<=1;i++){array[i]=done} 在最重要的switch判断式 case 1: 陈述式 break; case 2: 陈述式 break; ... 这部分有办法用for产生吗? 例如欲放置100个实体 已经可以让for产生100个实体以及个别需要用到的变数运算 侦听 但这个switch里面 case1-100 也能够让for产生 而不用100行以上的程式码 我目前做出来就是error 感谢 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.167.153.186 ※ 编辑: forestluch 来自: 118.167.153.186 (03/13 15:57) ※ 编辑: forestluch 来自: 118.167.153.186 (03/13 15:59)
1F:推 zpl:不同case之间执行的内容有相似性吗? 03/13 16:29
switch (event.currentTarget) { case op1 : activeCode = 1; opTargetWidth[activeCode] = actTargetWidth; picTargetX = picIntTargetX -((activeCode-1)*pic_mix.pic1.width-5); break; case op2 : activeCode = 2; opTargetWidth[activeCode] = actTargetWidth; picTargetX = picIntTargetX -((activeCode-1)*pic_mix.pic1.width-5); break; } 这是改写前的程式码 基本上执行的动作都是一样的 只是 是 谁 要执行 所有的按钮监听都执行这个function 然後function执行时 透过switch 找到 现阶段是谁在触发 并给予一个变数 activeCode 这个变数是用来呼叫流水号的实体及其变数 因为前面在宣告运算侦听都用for完成了 精简了大幅的程式码 所以希望这个switch也能比照精简 ※ 编辑: forestluch 来自: 1.162.152.95 (03/13 20:29)
2F:推 love112302:不知道可不可以用 event.currentEventName.replace 03/13 21:18
3F:→ love112302:.replace("op","") 变成"1" 再放到你的阵列 03/13 21:19
4F:→ love112302:有点忘了切却得名子 但是如果是我应该会这样做 03/13 21:20
5F:→ love112302:才学浅 有错见谅= = 03/13 21:20
6F:→ zpl:看起来你需要的是取得activeCode的方式对吧 03/13 21:35
7F:→ zpl:activeCode = int(event.currentTarget.name.substr(2)); 03/13 21:35
是的 如果我建立的10个按钮 op1, op2, op3,.... op10 同时他们也各有对应的变数 var1, var2, .....var10 但侦听的结果全都导向同一个 function 要用一个function来做多个按钮的动作 我想到的便是在这个function里包下每个按钮的动作 并且利用switch 的 event.currentTarget 来做判别 将判别的各个结果定义成一个变数 activeCode 之後利用["op"+activeCode]的方式去执行动作还有变数的计算 因为这样 每个case的内容几乎是一样的 差别在於是哪个按钮和底下的变数做动作 目前为止是OK的 差在 用for 改写switch这段 ※ 编辑: forestluch 来自: 1.162.152.95 (03/13 21:49)
8F:推 love112302:ㄚㄚ 都没想到 subString 03/13 21:47
嗯 谢谢 zpl 和 love112302 我试试看^^ ※ 编辑: forestluch 来自: 1.162.152.95 (03/13 21:50)







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:iOS站内搜寻

TOP