签到

06月21日
尚未签到

共有回帖数 1

    做月子

    等级:
    用Flash AS3实现
    新手向

















    Package
    {


    }
    相当于包的意思,相当于文件夹,将文件保存,后面没有文字相当于是该项目目录下。
    当然,如果出现
    package com
    {


    }
    那么就等于这个类的具体地址是在你这个项目的com文件夹下
    import 关键字
    相当于导入的意思,一个类里面能使用的方法有限,如果不从其他地方导入包,那么有些程序你就无法使用,当想使用其他程序时,你就必须要先import这个类,然后才能使用这个类里面的数据。
    import flash.display.MovieClip; 导入MovieClip这个基类,所有影片(转换为元件的)都必须引用该类为自己的
    父类,所以程序在开始的时候就自动帮你导入了
    public class Index extends MovieClip {
    }
    出现class了,这就表示这是一个类,该类的所有程序必须写在这个里面,写在外面就报错 Index就表示这个类的名字
    public function Index() {
    }
    就代表这个类的Main(主程序了)也就是在创建这个类的时候会执行一次的程序
    可以发现每一个{(前大括号)前都有一串程序,有前那么就有后,如何区分括号,最里面的前括号和最里面的
    括号是一对,然后是倒数第二里面的前括号和倒数第二的后括号,以此类推,有兴趣可以度娘程序括号的区分去学习。


    将代码写至如图所示
    可以注意的首先是import了两个新的类,分别是时钟和时钟时间的类,是Timer关键字 和 TimerEvent关键字必须的类
    var timer:Timer = new Timer(16); 新建一个时钟函数,就是说每隔多少时间执行一次的程序(在这里是十六毫秒)
    timer.addEventListener(TimerEvent.TIMER, My_Mouse_Move);是创建时钟事件,既然已经创建了时钟了,就
    必须给他一段每隔多少时间执行的程序,也就是My_Mouse_Move,也可以看见
    private function My_Mouse_Move(e:TimerEvent):void
    {

    }
    在这个前后大括号内写的程序就是将16毫秒执行一次的程序


    写入
    Mouse_MC.x = mouseX;
    Mouse_MC.y = mouseY;
    前面我们说过了,将原件的名字取名了,那么这里可以理解为是谁谁谁干嘛了,
    每个元件都有其坐标
    那么我们设定坐标,x,y
    mouseX 就是你真实鼠标的x轴,y也是同理
    现在,我们可以按下ctrl+enter试试效果啦


    效果还不是很理想
    我们加入如下程序
    Mouse_MC.mouseChildren = false;
    Mouse_MC.mouseEnabled = false;
    这两句话就是取消这个元件的点击和可用,如果不写的话讲会引发一直在点击这个图片的错误,只有将他点击取消了才可以点击这张图片下面的图
    Mouse 是需要导入的,Mouse.Hide(),就是隐藏鼠标可见性,现在再试试效果~






    因为程序是由上而下执行的,所以我只能先移动最后一个,移动第一个的话会发生全部移到一起的错误,具体原因可以读程序看出来


    我们新建一个timer程序,如图所示

    楼主 2016-07-30 09:55 回复

    做月子

    等级:




    然后在元件上右键-编辑类-ctrl+s(保存)








    在这里新加入的程序我们可以理解为新建一个鼠标图片到舞台

    1楼 2016-07-30 09:56 回复

共有回帖数 1
  • 回 帖
  • 表情 图片 视频
  • 发表

登录直线网账号

Copyright © 2010~2015 直线网 版权所有,All Rights Reserved.沪ICP备10039589号 意见反馈 | 关于直线 | 版权声明 | 会员须知