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

标题: flash怎么编写上一页、下一页的按钮代码 [打印本页]

作者: 网雨霏霏    时间: 2016-5-9 22:15     标题: flash怎么编写上一页、下一页的按钮代码

问题网址:http://tieba.baidu.com/p/4536404552

因为求助者没有点明AS的版本号,所以我在这里将两种情况都说一说

首先,要明确AS的版本号是多少,方法是:
用选择工具单击舞台空白处,看属性面板:
[attach]312[/attach]
这里共有三种情况,AS1.0  AS2.0  AS3.0
其中AS2可兼容AS1,但与AS3完全不兼容

所以,楼下会给出AS2和AS3的写法
【AS1已经老掉牙了,不要用】
作者: 网雨霏霏    时间: 2016-5-9 22:28

本楼给出AS2的写法


AS2有两种写法,这里只介绍操作起来最简单的一种

用选择工具单击按钮后,在动作面板内直接写代码

这里需要注意一个细节,必须真正的选中了按钮。下图是正确操作后的模样:
[attach]313[/attach]
箭头所指位置,是按钮的图标。
实际操作时,经常容易选中帧,而不是按钮。如果你选择的是帧,是下图的模样:
[attach]314[/attach]
箭头所指位置,不是按钮的图标,而是图层的图标

在确保真正的选择对了按钮的前提下,直接在动作面板内输入代码:
//上一页按钮的代码:
on(press){
gotoAndStop(_currentframe-1);
}


//下一页按钮的代码:
on(press){
gotoAndStop(_currentframe+1);
}

作者: 网雨霏霏    时间: 2016-5-9 22:53

本楼给出AS3的写法:

AS3规定,代码不能直接加在对象上,只能加在帧上(或外部类内)
这里只介绍加在帧上的写法

1、必须给按钮设定一个实例名
方法是:用选择工具单击按钮,在属性面板内:
[attach]315[/attach]

如图,我将其实例名设为next_btn
这是下一页的

同理,给上一页按钮设置实例名为pre_btn

2、新建一个图层,单击关键帧后打开动作面板,输入代码如下:
pre_btn.addEventListener(MouseEvent.CLICK, dj);
next_btn.addEventListener(MouseEvent.CLICK, dj);
function dj(e:MouseEvent):void
{
switch (e.target)
{
  case pre_btn :
   gotoAndStop(currentFrame-1);
   break;
  case next_btn :
   gotoAndStop(currentFrame+1);
   break;
}
}





欢迎光临 flash之路-flash技术交流 (http://flashroad.joinbbs.net/) Powered by Discuz! 7.2