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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 04.05.2011, 12:06
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 11  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
ага, насчет 'только через цикл' я погорячился
но какая-то рекурсия у тебя с циклическим душком, что ли, может не подойти
вот истино ациклический вариант:
Код AS3:
package 
{
	import flash.display.DisplayObject;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;
 
	public class Main extends Sprite 
	{
		public function Main():void 
		{
			//10 экземпляров
			for (var i:int = 0; i < 10; i++) 
			{
				addChild(new Ystr());
			}
			stage.addEventListener(MouseEvent.CLICK, onClick);
		}
		//переключаем видимость по клику
		private function onClick(event:MouseEvent):void 
		{
			Ystr.visible = !Ystr.visible;
		}
	}
}
//==========================================================
import flash.display.Sprite;
class Ystr extends Sprite
{
	private static var last:Ystr;
	private static var _visible:Boolean = true;
	private var prev:Ystr;
	public function Ystr():void 
	{
		graphics.beginFill(0xC0C0C0);
		graphics.drawCircle(0, 0, 10);
		x = Math.random() * 400;
		y = Math.random() * 400;
		prev = last;
		last = this;
	}
	override public function set visible(value:Boolean):void
	{
		if (prev) prev.visible = value;
		super.visible = value;
	}
	public static function get visible():Boolean {return _visible;}
	public static function set visible(value:Boolean):void
	{
		if (value != _visible) 
		{
			_visible = value;
			last.visible = _visible;
		}
	}
}

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

Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
Вот накинулись... зачем-зачем? Человек может быть не знает как пользоваться циклом, и стесняется в этом признаться!

Старый 04.05.2011, 12:44
i.o. вне форума Посмотреть профиль Отправить личное сообщение для i.o. Найти все сообщения от i.o.
  № 13  
Ответить с цитированием
i.o.
 
Аватар для i.o.

Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
Цитата:
А других вариантов нету? Какое-нибудь перечисление, например, без такого громоздкого кода.
Ну если вариант Силина, через рекурсию, менее громоздкий, то это определенно то, что вам нужно

Старый 04.05.2011, 12:46
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 14  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
>>Вот накинулись... зачем-зачем?

никто никуда не накинулись..
каждый может оказаться в такой ситуации, ну без циклов то есть..
и надо быть к этому готовым, я так считаю, а иначе беда: встанешь и будешь стоять как дурак, без циклов-то

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

Регистрация: Nov 2003
Сообщений: 474
Отправить сообщение для aaanet с помощью ICQ
Цитата:
Сообщение от Bgg Посмотреть сообщение
Вот накинулись... зачем-зачем? Человек может быть не знает как пользоваться циклом, и стесняется в этом признаться!
Не правда, знаю.
И не то, что нельзя использовать цикл. Просто очень не удобно. В коде и так очень много циклов. И еще если добавить эти циклы, с visible, то вообще.

И никто не накидывался, а приводили другие варианты, помогали, отвечали, а не просто сотрясали кнопки клавиатуры.


Всем спасибо, понял что самое оптимальное будет всё же использовать циклы.

Старый 04.05.2011, 15:01
2Sun вне форума Посмотреть профиль Отправить личное сообщение для 2Sun Найти все сообщения от 2Sun
  № 16  
Ответить с цитированием
2Sun
[+1 24.05.11]
[+1 09.08.11]
 
Аватар для 2Sun

Регистрация: Mar 2011
Сообщений: 101
С точки зрения количества буковок - лучше всего в контейнер засунуть, все что нужно периодически показывать/прятать ну или включать выключать мыШ.

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

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

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


 


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


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