Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция_Кнопки_9312.doc
Скачиваний:
0
Добавлен:
15.08.2019
Размер:
83.46 Кб
Скачать

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, две кнопки и три текстовых поля. По нажатию на первую кнопку перемещать объект вправо вверх, по нажатию на вторую кнопку перемещать объект влево вниз. Количество нажатий на кнопки хранить в текстовых полях, в третьем поле – частное от деления количества нажатий на вторую и впервую кнопки.