Import flash.Display.*;
Import flash.Events.*;
public class Example2 extends Sprite
{
public function Example2()
{
var button1:SimpleButton = new SimpleButton();
button1.x = 20;
button1.y = 20;
button1.upState = new kvadrat();
button1.overState = new kvadrat_b();
button1.downState = new kvadrat_g();
button1.hitTestState = button1.upState;
button1.addEventListener(MouseEvent.CLICK, fClick);
addChild(button1);
}
private function fClick(event:MouseEvent):void
{
trace("Вы нажали мышью на кнопке");
}
}
}
Таблица 1 – Связь свойства type класса MouseEvent с именем стандартного события
Константа, задающая значение свойства type |
Событие |
Назначение события |
CLICK |
Click |
Нажатие и последующее отпускание основной кнопки мыши над одним и тем же объектом InteractiveObject. Или активизация пользователем экземпляра класса SimpleButton, Sprite или MovieClip клавишей Пробел или Enter |
DOUBLE_CLICK |
doubleClick |
Два события MouseEvent.CLICK, происходящих одно за другим над одним и тем же объектом InteractiveObject |
MOUSE_DOWN |
mouseDown |
Нажатие основной кнопки мыши, когда указатель мыши находится над областью отображения приложения Flash Player |
MOUSE_MOVE |
mouseMove |
Указатель мыши перемещается над областью отображения приложения Flash Player |
MOUSE_OUT |
mouseOut |
Указатель мыши переместился за границы отображаемого объекта |
MOUSE_OVER |
mouseOver |
Указатель мыши переместился на отображаемый объект |
MOUSE_UP |
mouseUp |
Отпускание основной кнопки мыши, когда указатель мыши находится над областью отображения приложения Flash Player |
MOUSE_WHEEL |
mouseWheel |
Когда приложение Flash Player имело системный фокус, было использовано устройство прокрутки мыши |
ROLL_OUT |
rollOut |
Указатель мыши прежде переместился на некоторый объект InteractiveObject или одного из его потомков, но больше не находится над этим отображаемым объектом или одним из его потомков |
ROLL_OVER |
rollOver |
Указатель мыши переместился на некоторый объект InteractiveObject или на одного из его потомков |
Задание. Создать объект-наследник класса MovieClip, две кнопки и два текстовых поля. По нажатию на первую кнопку перемещать объект вправо, по нажатию на вторую кнопку перемещать объект влево. Количество нажатий на кнопки хранить в текстовых полях.
package {
Import flash.Display.*;
Import flash.Events.*;
import flash.text.*;
public class Example3 extends Sprite
{
var sun1:sun; // Объявлен объект класса sun
var text1:TextField; // Объявлен объект класса TextField
var text2:TextField;
public function Example3()
{
// Создание кнопок
var button1:SimpleButton = new SimpleButton();
button1.x = 100;
button1.y = 20;
button1.upState = new kvadrat();
button1.overState = new kvadrat_b();
button1.downState = new kvadrat_g();
button1.hitTestState = button1.upState;
var button2:SimpleButton = new SimpleButton();
button2.x = 300;
button2.y = 20;
button2.upState = new kvadrat_b();
button2.overState = new kvadrat();
button2.downState = new kvadrat_g();
button2.hitTestState = button2.upState;
// Создание текстовых полей
text1 = new TextField(); // Вызываем конструктор для объекта text1
text1.text = "0";
text1.x = 100;
text1.y = 40;
text2 = new TextField();
text2.text = "0";
text2.x = 300;
text2.y = 40;
// Создание наследника класса MovieClip
sun1 = new sun();
sun1.x = 50;
sun1.y = 260;
// Добавление слушателей событий для кнопок
button1.addEventListener(MouseEvent.CLICK, fun1);
button2.addEventListener(MouseEvent.CLICK, fun2);
// Добавление объектов в список отображения
addChild(button1);
addChild(button2);
addChild(text1);
addChild(text2);
addChild(sun1);
}
// Определение слушателей
private function fun1(event:MouseEvent):void
{
sun1.x += 10; // Перемещение объекта
text1.text = String(parseInt(text1.text) +1); // Увеличение значения счетчика
// нажатий на кнопку
}
private function fun2(event:MouseEvent):void
{
sun1.x -= 10;
text2.text = String(parseInt(text2.text) +1);
}
}
}
Варианты заданий.
1. Создать 2 объекта-наследника класса MovieClip, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать первый объект влево вниз, по нажатию на вторую кнопку перемещать второй объект вправо вверх. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – количество нажатий на обе кнопки.
2. Создать 2 объекта-наследника класса MovieClip, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать объект влево вверх, по нажатию на вторую кнопку перемещать объект вправо вниз. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – разность между количеством нажатий на первую и вторую кнопки.
3. Создать 2 объекта-наследника класса MovieClip, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать объект вправо вниз, по нажатию на вторую кнопку перемещать объект влево вверх. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – разность между количеством нажатий на вторую и впервую кнопки.
4. Создать 2 объекта-наследника класса MovieClip, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать объект вправо вверх, по нажатию на вторую кнопку перемещать объект влево вниз. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – частное от деления количества нажатий на вторую и впервую кнопки.
5. Создать 2 объекта-наследника класса MovieClip, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать первый объект влево вниз, по нажатию на вторую кнопку второй объект должен уменьшать прозрачность. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – значение прозрачности второго объекта.
6. Создать 2 объекта-наследника класса MovieClip, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать первый объект вниз, по нажатию на вторую кнопку второй объект должен уменьшать ширину. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – значение ширины второго объекта.
7. Создать 2 объекта-наследника класса MovieClip, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать первый объект вверх, по нажатию на вторую кнопку второй объект должен уменьшать высоту. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – значение высоты второго объекта.
8. Создать 2 объекта-наследника класса MovieClip, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать первый объект вверх, по нажатию на вторую кнопку второй объект должен изменять угол поворота. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – значение угла поворота второго объекта.
9. Создать 2 объекта-наследника класса MovieClip, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать первый объект влево, по нажатию на вторую кнопку второй объект должен увеличивать размер. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – значение ширины второго объекта.
10. Создать 2 объекта-наследника класса MovieClip, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать первый объект влево вниз, по нажатию на вторую кнопку перемещать второй объект вправо вверх. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – количество нажатий на обе кнопки.
11. Создать 2 объекта-наследника класса MovieClip, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать объект влево вверх, по нажатию на вторую кнопку перемещать объект вправо вниз. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – разность между количеством нажатий на первую и вторую кнопки.
12. Создать 2 объекта-наследника класса MovieClip, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать объект вправо вниз, по нажатию на вторую кнопку перемещать объект влево вверх. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – разность между количеством нажатий на вторую и впервую кнопки.
13. Создать 2 объекта-наследника класса MovieClip, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать объект вправо вверх, по нажатию на вторую кнопку перемещать объект влево вниз. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – частное от деления количества нажатий на вторую и впервую кнопки.