Воскресенье, 24.11.2024, 17:50
Приветствую Вас Гость | RSS
Главная | События ActionScript | Регистрация | Вход
Языки Программирования (adsbygoogle = window.adsbygoogle || []).push({});
Форма входа
Меню сайта

Календарь
«  Ноябрь 2024  »
ПнВтСрЧтПтСбВс
    123
45678910
11121314151617
18192021222324
252627282930

Наш опрос
Оцените мой сайт
Всего ответов: 101

Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • Статистика

    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0

    reklama

    События ActionScript

     

    Приветствую! Сейчас поговорим о событиях.

    Язык ActionScript имеет Си-подобный синтаксис, чем-то похож на Java и Visual Basic. Только вместо формы AS имеет сцену. Среднестатистическая сцена, созданная в программе Adobe Flash CS5.5 выглядит так:

    Также запомните одну простую истину: на слое, на котором есть хоть какая-то графика код писатьбесполезно.

    Да-да, код мы пишем именно на слоях. Теперь будем слушать события. Создайте на сцене квадрат (круг или еще кого-нибудь, без разницы), затем выберите его и щелкните F8. Убедитесь, что конвертируете вы именно в Movie Clip. Потом выберите результат и задайте Instance Name -> box.


    Пишем такой код (предварительно создав новый слой):

    box.addEventListener(MouseEvent.CLICK, boxMove);

    Можете нажать Ctrl+Enter, но ничего хорошего не получите. Мы определили событие, однако его нужно ещеобработать. Среднестатистический обработчик событий ActionScript выглядит так:

    function название_фунции(e:тип_слушателя):void{тело_функции}

    Кстати говоря, %название_функции% и то, что идет вопределении событияпосле (у нас) MouseEvent.CLICK должны быть идентичными. Обработаем событие так:

    function boxMove(e:MouseEvent):void
    {
     box.x += 5;
    }
    

    Вот полный листинг программы:

    import flash.events.MouseEvent;
    
    box.addEventListener(MouseEvent.CLICK, boxMove);
    
    function boxMove(e:MouseEvent):void
    {
     box.x += 5;
    }
    

    Теперь, на посашок, дам вам события крысы:

    • MouseEvent.CLICK – сделано нажатие и отпускание ЛКМ над рабочей областью;
    • MouseEvent.MOUSE_DOWN – сделано нажатие ЛКМ;
    • MouseEvent.MOUSE_UP – сделано отпускание ЛКМ;
    • MouseEvent.DOUBLE_CLICK – событие происходит после 2-го щелчка
    • MouseEvent.MOUSE_MOVE – событие происходит, если курсор перемещается над областью отображения;
    • MouseEvent.MOUSE_OVER – событие происходит, если указатель перемещается на объект. Чтобы событие произошло еще раз, курсор нужно поместить за пределы объекта, а потом снова навести его на объект.
    • MouseEvent.MOUSE_OUT – событие происходит, если указатель перемещается за пределы области объекта;
    • MouseEvent.MOUSE_WHEEL – событие происходит, если указатель расположен над рабочим объектом и пользователь крутит колесо;

    Событие ENTER_FRAME.

    Это чудесное событие поможет нам сделать движение объекта. Делается это так:

    stage.addEventListener(Event.ENTER_FRAME, ef);
    
    function ef(e:Event):void
    {
     box.x += 2;
    }
    

    Заработало? Еще бы. Теперь сделаем, чтобы когда мы щелкаем на кнопку (которую вы предварительно нарисуете и дадите имя btn), квадрат переходил в 0 по иксу. Делают это так:

    btn.addEventListener(MouseEvent.CLICK, btnClk);
    
    function btnClk(e:Event):void
    {
     box.x = 0;
    }
    

    Полный листинг второй программы:

    import flash.events.MouseEvent;
    import flash.events.Event;
    
    stage.addEventListener(Event.ENTER_FRAME, ef);
    
    function ef(e:Event):void
    {
     box.x += 2;
    }
    
    btn.addEventListener(MouseEvent.CLICK, btnClk);
    
    function btnClk(e:Event):void
    {
     box.x = 0;
    }
    

    Это все. Удачи!


    Урок 4 - Переменные, массивы, константы в ActionScript 


    Copyright MyCorp © 2024
    Бесплатный хостинг uCoz