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

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

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

Регистрация: Apr 2001
Адрес: Berlin
Сообщений: 1,862
Отправить сообщение для derhab с помощью ICQ Отправить сообщение для derhab с помощью Skype™
Цитата:
Сообщение от in4core
...Что за бред ??? Сам понимаешь что написал?...
Цитата:
Сообщение от in4core
...даж я с минимальными знаниями ас3 и то понимаю...
Цитата:
Сообщение от in4core
хотя если ошибаюсь мне будет оч стыдно за свои слова
уже стыдно?)
__________________
freelance | Раздор

Старый 05.09.2010, 02:01
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 12  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
стыдно конечно) ну не суть. зато много полезного

Старый 05.09.2010, 21:02
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 13  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
А мне не нравится кастовать по 2 раза. Достаточно вспомнить, что
Код AS3:
someObject as MovieClip
вернет null, если кастинг не прошел. Поэтому, чаще всего делаю так:
Код AS3:
var someClip:MovieClip = someObject as MovieClip
if(someClip != null) {
someClip.gotoAndStop("куда-то там");
}
__________________
...вселенская грусть

Старый 06.09.2010, 17:17
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 14  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
gloomyBrain, достаточно if (someClip)

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

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

Старый 06.09.2010, 17:44
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 16  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
etc, спасибо =) но я в курсе. Привык так просто, вот и пишу

@i.o.
Кастинг несколько медленнее создания переменной.
__________________
...вселенская грусть


Последний раз редактировалось gloomyBrain; 06.09.2010 в 17:46.
Старый 06.09.2010, 18:01
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 17  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
gloomyBrain, гм, по моему быстрее или медленнее — это сущая мелочь.

Старый 22.11.2011, 20:17
goldlider вне форума Посмотреть профиль Отправить личное сообщение для goldlider Найти все сообщения от goldlider
  № 18  
Ответить с цитированием
goldlider

Регистрация: Jun 2010
Сообщений: 120
Читал предыдущие посты, но не догнал такую вещь. В Flash IDE на основной шкале имеются мувики с вложенными кадрами. Класс WeaponDemo - это Document Class.

Код AS3:
package
{
	import flash.display.*;
 
	public class WeaponsDemo extends MovieClip
	{
		public function WeaponsDemo()
		{	
			for (var i:int = 0; i < numChildren; i++)
			{
				if (getChildAt(i) is MovieClip)
				{
					(getChildAt(i) as MovieClip).stop(); // Если не сделать кастинг, то в строгом режиме компилятор выдает ошибку "1061: Call to a possibly undefined method stop through a reference with static type flash.display:DisplayObject".
				}
			}
		}
	}
}
Ведь метод stop() яв-ся родным методом класса MovieClip. Почему же тогда приходится выполнять кастинг?

Старый 22.11.2011, 20:25
Stitch512 вне форума Посмотреть профиль Отправить личное сообщение для Stitch512 Найти все сообщения от Stitch512
  № 19  
Ответить с цитированием
Stitch512

Регистрация: Nov 2010
Сообщений: 150
Метод getChildAt возвращает DisplayObject, не обязательно MovitClip, это уже выше обсудили.

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

Регистрация: Jun 2010
Сообщений: 120
Цитата:
Сообщение от Stitch512 Посмотреть сообщение
Метод getChildAt возвращает DisplayObject, не обязательно MovitClip, это уже выше обсудили.
Код AS3:
trace(getChildAt(i)) выводит [object MovieClip]

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

Теги
error #1061

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

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


 


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


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