毕业论文 论文提纲 论文写作 公文范例 教育论文 教育学论文 师范教育 学术论文     论文指导*
                     
 
   
   
   
   
           
 

当前位置:课件115学培吧(kj115.com)→flash课件制作教程

 
 
标题: 谈Flash课件中的拖动方案
 
展示台

文章来源 作者:admin 密 码:admin 整理:湖北金鹰

◇图文教程简介

本栏目收集整理FLASH相关和FLASH课件制作相关的技术教程,代码初步检验无错误。所有教程资源全部免费,属于本站免费的FLASH相关核心教程。

学习过程中有问题可以直接提出,本站尽所能帮你解决问题。

学员问答   技术难题

---------------

湖北金鹰课件吧

简介:省级 和国家级FLASH竞赛课件制作专业网站。

---------------

你可能感兴趣的还有免费的:

FLASH视频教程
    以图案填充对象
    运用渐进色彩
    置入与设定声音
    编辑声音
PS视频教程
    图像与像素
    多种抓屏方法
    多种选择工具的使用
    段落面板

---------------

FlashMX制作交互式的flash课件时,很多场合都需要用到拖动。在FlashMX中主要的拖动方式有以下三种:无任何约束的拖动、限制在某一矩形范围内的拖动、限制在某一路径上的拖动。下面通过实例加以说明。
1.无任何约束的拖动
(1)打开“插入”菜单的“新建元件”命令,在“创建新元件”对话框中,“名称”框内输入“球”,“行为”选择“影片剪接”。
(2)画一个圆,最好是让圆心和影片剪接的中心对齐。
(3)选择主场景,按F11打开“库”面板,将刚制作好的球拖动至主场景中。
(4)选择主场景中的球,打开窗口下方的“属性”面板,在名称框内输入名称ball。
(5)右击ball,选择“动作”命令,在代码编辑框内输入:
on(press)
{
startDrag("",true);//允许拖动ball
}
on(release,releaseOutside)
{
stopDrag();//释放鼠标时,停止拖动ball
}
(6)拖动ball,我们将看到ball可以拖动到场景中的任意位置,释放鼠标时,ball将停止拖动。
2.约束某一矩形范围内的拖动
将以上代码改为:
on(press)
3.沿某一路径的拖动
在某些场合,如通过拖动动态生成数学函数图像时,因为函数图像都有一个函数式约束,决定了以上两种方法都不可行。这种拖动的关键在于要根据约束条件来决定被拖动对象的位置。下面以动态生成圆来说明此类拖动问题的解决方法。
(1)通过“插入”菜单制作一个名为“点”的电影剪接,画一个小点表示该电影剪接,注意点的中心和电影剪接的中心点重合。
(2)转到主场景,新增一图层,将两图层分别命名为“脚本”和“对象”。
(3)选择“对象”时间轴,在场景中加入两个“点”的实例,在它们的属性面板中分别命名为“yuanxi”(表示圆心)和“dian”(表示圆周上的点),让它们适当保持一定的距离,并且让“yuanxi”位于场景的中央。
(4)右击“脚本”层第一帧,选择“动作”,在代码编辑窗口内输入以下脚本:
drag_flag=false;//拖动标志
x0=yuanxin._x;
y0=yuanxin._y;
dian_x=dian._x;
dian_y=dian._y;
//计算圆的半径,这就是拖动圆周的点的约束条件,被拖动的点到圆心的距离等于半径。
r=Math.sqrt((x0-dian_x)*(x0-dian_x)+(y0-dian_y)*(y0-dian_y));
_root.onEnterFrame=function()
{
if(drag_flag)
{
x=_xmouse;
y=_ymouse;
angle=Math.atan(Math.abs(y0-y)/Math.abs(x-x0));
dian_x=x0+r*Math.cos(angle);
dian_y=y0-r*Math.sin(angle);
//第一象限
if((x>=x0)&&&&(y<=y0))
{
dian_x=x0+r*Math.cos(angle);
dian_y=y0-r*Math.sin(angle);
depth=angle*180/3.14159;
}
{
//限制拖动范围为(0,0)到(100,100)之间,注意坐标原点位于场景中的左上角。
startDrag("",true,0,0,100,100);}
on(release,releaseOutside)
{
stopDrag();
}
再拖动ball,将看到ball被限制在某一区域内拖动。
//第二象限
if((x<=x0)&&&&(y<=y0))
{
dian_x=x0-r*Math.cos(angle);
dian_y=y0-r*Math.sin(angle);
depth=angle*180/3.14159+90;
}
//第三象限
if((x<=x0)&&&&(y>=y0))
{
(5)右击dian实例,选择“动作”命令,输入以下脚本:
on(press)
{
_root.drag_flag=true;//在dian实例上按下鼠标左键,置拖动标志为真。
}
on(release,releaseOutside)
{
_root.drag_flag=false;//在dian实例上松开鼠标左键,置拖动标志为假。
}
(6)测试影片,拖动dian实例,将看到在场景中会画出一个由点构成的圆。
从此例可以看出,实现沿某一路径的拖动,关键是要通过约束条件找到拖动时的对象的坐标。
dian_x=x0-r*Math.cos(angle);
dian_y=y0+r*Math.sin(angle);
depth=angle*180/3.14159+180;
}
//第四象限
if((x>=x0)&&&&(y>=y0))
{
dian_x=x0+r*Math.cos(angle);
dian_y=y0+r*Math.sin(angle);
depth=angle*180/3.14159+270;
}
duplicateMovieClip("dian","dian"adddepth,depth);
_root["dian"adddepth]._x=dian_x;
_root["dian"adddepth]._y=dian_y;
_root.clear();
_root.moveTo(x0,y0);
_root.lineStyle(1,0xff0000,100);
_root.lineTo(dian_x,dian_y);
}
}

 

 

 
课件115学培吧(湖北金鹰)欢迎您!永久免费服务网址:http://www.kj115.com
   
 

学员众多的FLASH课件学习基地,成万免费FLASH课件制作教程在线学习,还有免费内容课件教程、视频教程、课件技巧、课件探讨、课件欣赏、课件展示、实用教程、课件界面、课件脚本、课件游戏、课件下载、课件封面、课文内容图片、课文人物图片库、课件素材、图片素材、声音素材、动物素材、背景图片、背景资料、背景边框、课件顶栏图片素材、Dreamweaver教程、Dreamweaver网页课件教程、软件下载。承接学习和培训,承接课件订制,课件修改等所有课件相关服务。
本站主要业务:┃flash课件制作视频教程培训┃承接全国竞赛flash课件┃论文代写代发┃代办课件国家级获奖证书┃
联系:QQ:444860709 手机:13339817386


 
 

业务办理
鄂ICP备08005724号