免費論壇 繁體 | 簡體
Sclub交友聊天~加入聊天室當版主
分享

AS3技巧集:6.给舞台上的N个按钮,批量添加鼠标单击操作

本文来自:★flash之路-flash技术交流★ 转帖请注明出处! 作者:网雨霏霏 您是第3558个浏览者

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
flashroad友情提示:
“点评”不是“回帖”!
【问题描述】:
舞台上已经放置好了数个按钮,单击它们的时候实现类似的效果,如果每一个都单独的书写,太麻烦了,是否有简易方法呢。

【解决方案】:
该问题在AS3内超级容易解决,不过,按钮的实例名必须非常有规律,必须设置为“字母+数字”的形式,字母都一样,数字从0或1开始,每次增加1个单位。形如下面的命名:
btn1 btn2 btn3 btn4 btn5 btn6 btn7


下面给出具体问题:
舞台上有10个按钮,分别设置了实例名,btn1到btn10
舞台上还有两个动态文本,实例名为xianshi1与xianshi2
xianshi1用于显示当前单击的按钮的数字【属性面板内使用了“嵌入”数字的方式以消除锯齿】,
xianshi2用于显示汉字【属性面板内不消除锯齿,因为“嵌入”了所有汉字的话,会导致swf体积超大】



代码如下:
  1. var shuzu:Array=new Array(10)
  2. shuzu[0]="君生我未生";
  3. shuzu[1]="我生君已老";
  4. shuzu[2]="君恨我生迟";
  5. shuzu[3]="我恨君生早";
  6. shuzu[4]="恨不生同时";
  7. shuzu[5]="日日与君好";
  8. shuzu[6]="我离君天涯";
  9. shuzu[7]="君隔我海角";
  10. shuzu[8]="化蝶去寻花";
  11. shuzu[9]="夜夜栖芳草";
  12. for(var i:uint=1;i<=10;i++){
  13. this["btn"+i].addEventListener(MouseEvent.CLICK,dj);
  14. function dj(e:MouseEvent){
  15. xianshi.text=""+e.target.name.substr(3);
  16. xianshi2.text=""+shuzu[uint(e.target.name.substr(3))-1];
  17. }
  18. }
复制
代码解释:
看截图中代码所在的行号:
1:定义一个数组,用于存储汉字的,该数组内共有10个元素,分别对应10个按钮单击后的输出
2-11:设置10个元素的值,注意要用双引号括起来
12-18:批量代码
13:利用this[实例名]的手段,可以访问到舞台上的对象
15:在14行内有一个名为e的参数,在15行内通过e.target.name即可访问到当前被单击对象的实例名,e.target.name是String字符串类型的,调用它的substr(n)方法,可以截取从第n个字符开始到最后的所有字符串,截取后的类型是字符串类型的
16.uint(e.target.name.substr(3))是将提取出来的字符串转换为uint数据类型,用于数组的索引的
索引值是从0开始的,而我们给按钮设置的实例名是从1开始的,故这里需要-1


源文件下载【flashCS6格式】:
本帖隐藏的内容需要回复才可以浏览
您所在的用户组只能看到部分内容.
如查看全部内容, 请先登录或者注册.
附件: 您需要登录才可以下载或查看附件。没有帐号?注册

友情提示:单击下列任意一个表情,即可瞬间自动回复本帖!

好贴......
郁闷......
开心......
擦汗......
鄙视......
狂怒
谢谢
爱你呦
拜托了
嗯嗯
OMG
求关注
伤心......
无奈.....
无奈.....
无奈.....
无奈.....
无奈.....
哈哈哈
NO
OK
what
我来了

最近访问本帖者列表:

迷彩不流泪
访问时间:2020-02-19 00:03
flashroad
访问时间:2020-02-13 08:04
横沟
访问时间:2019-06-21 20:56
网雨霏霏
访问时间:2019-03-17 22:20

打赏

取消

感谢您的支持,我会继续努力的!

扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

Powered by 爱秀代码,分享从这里开始,精彩与您同在

点评
B Color Smilies

您还可以输入:个字符
X

X

如果:
按钮的实例名都是用英文或者汉语拼音,其实也可以实现。
改天我整理出来吧
您所在的用户组只能看到部分内容.
如查看全部内容, 请先登录或者注册.

获得 小赌神卡 一张

卡片说明:网雨霏霏帮助迷路的小朋友找到家长,家长为表达谢意,付出了8威望

卡片效果:+8

点评
B Color Smilies

您还可以输入:个字符
X

X

TOP

 

B Color Image Link Quote Code Smilies
高级模式 | 发新话题

您需要登录后才可以回帖 登录|立即注册

快速
返回顶部
返回首页