Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 24.05.2015, 22:12
Jumgar вне форума Посмотреть профиль Отправить личное сообщение для Jumgar Найти все сообщения от Jumgar
  № 1  
Ответить с цитированием
Jumgar

Регистрация: May 2015
Сообщений: 1
По умолчанию Как сделать кнопку рестарта ролика?

Доброго времени суток.
Есть код, нужно сделать кнопку которая перезапустит ролик.
Код AS3:
var n:int = Math.round(Math.random() * 100);
	for (var i:int = 0; i < n; i++)
	{
		var line:Line = new Line ();
		addChild (line);
 
		line.y = Math.random() * 400;
		line.x = Math.random() * 550;
		line.rotation = Math.random() * 360;
	}
Нужно для творческих целей, долго бился, но из за отсутствия нужных знаний желаемый результат так и не получил.

Старый 25.05.2015, 14:12
romanlysenko вне форума Посмотреть профиль Отправить личное сообщение для romanlysenko Найти все сообщения от romanlysenko
  № 2  
Ответить с цитированием
romanlysenko
 
Аватар для romanlysenko

Регистрация: May 2015
Сообщений: 19
1. Создайте кнопку, повесьте на неё слушатель события.
2. Создайте функции которая будет вызываться при нажатии на кнопку.
3. В функцию вставьте ваш код.

Код AS3:
package {
	import flash.display.Sprite;
	import flash.display.SimpleButton;
	import flash.events.MouseEvent;
 
	public class Restart extends Sprite {
		private var buttonRestart:SimpleButton;
		private var buttonSprite:Sprite;
 
		public function Restart() {
			/* Создание кнопки */
			createButton();
 
			/* Вызываем функцию restartListener для перерисовки графических объектов */
			buttonRestart.addEventListener(MouseEvent.CLICK, restartListener);
		}
 
		private function createButton():void {
			buttonRestart = new SimpleButton();
			buttonSprite = new Sprite();
 
			buttonSprite.graphics.lineStyle(1, 0x555555);
			buttonSprite.graphics.beginFill(0xff000,1);
			buttonSprite.graphics.drawRect(0,0,200,30);
			buttonSprite.graphics.endFill();
 
			buttonRestart.overState = buttonRestart.downState = buttonRestart.upState = buttonRestart.hitTestState = buttonSprite;
			addChild(buttonRestart);
		}
 
		private function restartListener(param:MouseEvent):void {
			/* Очистка сцены от графических объектов */
			graphics.clear();
 
			/* Указывает стиль линии, который будет использоваться при последующих 
			вызовах таких методов Graphics, как lineTo() или drawCircle(). */
			graphics.lineStyle(1, 0, 1);
 
			var n:int = Math.round(Math.random() * 100);
			for (var i:int = 0; i < n; i++) {
				/* Рисует линию с использованием текущего стиля линии от текущего положения 
				инструмента рисования до точки с координатами (x, y); затем текущим 
				положением становится точка (x, y). */
				graphics.lineTo(Math.random() * 550, Math.random() * 400);
			}
		}
 
	}
}
Набросал на скорую руку, думаю смысл будет понятный.
Кнопка создана программно и не лучшим образом, по этому создайте свою через Flash IDE или же программно с помощью отдельно написанного класса.

Чтобы запустить данный пример, создайте класс Restart в него вставьте данный код и привяжите класс к файлу .fla на панели Properties в строке Class: Restart

Создать новую тему Ответ Часовой пояс GMT +4, время: 14:55.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 14:55.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.