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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.11.2010, 12:04
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 11  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
Цитата:
Слабые ссылки - это костыли, которые не всегда и работают.
Не всегда работают, но и сбоев не вызывают, так что уж лучше с ними, чем без них

А в целом, можно придумать кучу способов это осуществить, не вижу особой проблемы в удалении / добавлении слушателей. Главное задаться целью

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

Регистрация: Oct 2007
Сообщений: 85
просто у меня в программе на отдельных кадрах сделаны кнопки, формы и т.д. На каждом кадре почти есть enter_frame этот...
Загружать каждую мелкую деталь отдельной swf я не хочу, а убирать visible если они на общем большом фрейме - свалка будет самая настоящая.

Часто ошибка вылетает "Обращение к методу с сылкой на null at//blabla/ENTER_FRAMEмоей функции". Я вот и хочу чтобы при смене кадра автоматом они удалялись, а не каждый раз выборочно их удалять


Последний раз редактировалось Toxedo; 25.11.2010 в 13:17.
Старый 25.11.2010, 14:29
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 13  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Формируйте все программно - и никаких проблем не будет.
__________________
тут я

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

Регистрация: Oct 2007
Сообщений: 85
КорДум, я это понимаю, но опять же для моей работы проще будет найти способ убить листенер при его неэкзисте)

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

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Тогда почему для вашей работы нужен именно ас3, а не ас1?
__________________
тут я

Старый 25.11.2010, 15:56
Toxedo вне форума Посмотреть профиль Отправить личное сообщение для Toxedo Найти все сообщения от Toxedo
  № 16  
Ответить с цитированием
Toxedo

Регистрация: Oct 2007
Сообщений: 85
Я вот так отвечу...Вот вы ездиете, ездеите на запорожце и вдруг вам подарили Ламборджини! Полгода вы усваиваете все детали в новой машине, разные кнопки, настройки мпз плеера; привыкли уж совсем! И в один прекрасный день решаете доехать всего ничего до соседнего магазина, но тут у Ламбо находится маленькая неполадка. Вы сядите обратно за запорожец, будете вспоминать что как куда жать ради всего ничего, или исправите неполадку?
Вот вам и аналогия)
А что? Обе машины, на обоих можно доехать куда нужно.


НУ а всёже, я честно говоря протестировал все варианты из темы, в некоторых моментах дают сбой..
Код AS3:
if(currentFrame==1){
	trace(333)
addEventListener(Event.ENTER_FRAME,sd)}else{
removeEventListener(Event.ENTER_FRAME,sd)
	trace(111)}
 
 
function sd(e:Event):void{
 
if(s>100){	
 
gotoAndStop(2)
ttt.text = s
 
 
		}else{ s++ 
		}
 
 
	}
как нибуть в этом виде я думал можно представить, но не работает((( Весь интернет обрыл ненайду никак нормального способа проверить Listener != exist или нет


Последний раз редактировалось Toxedo; 25.11.2010 в 16:07.
Старый 25.11.2010, 16:04
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 17  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Цитата:
Вот вам и аналогия)
АС3 - язык, на котором нужно писать в классах. Да, адобовцы ввели поддержку кода в кадрах. Но именно из-за нее большинство тем здесь на форуме. И да, эта аналогия может подойти к ас2, где можно комбинировать код на ас1 в кадрах и на ас2 в классах. Но не к ас3. Если вы в каком-то языке писали свой метод обработки текста, а потом перешли на пехапе, где этот метод уже есть, вы тоже будете писать свой метод?
__________________
тут я

Старый 25.11.2010, 16:24
Toxedo вне форума Посмотреть профиль Отправить личное сообщение для Toxedo Найти все сообщения от Toxedo
  № 18  
Ответить с цитированием
Toxedo

Регистрация: Oct 2007
Сообщений: 85
Небуду. Вот представьте себе Флешка с 100 кадрами. В каждом по 1 кнопке, на каждой висит листенер ЕнтерФрейм...в классе мне придется организовать так чтобы

Код AS3:
if(currentFrame==1){какоето действие к объекту в кадре}
if(currentFrame==2){какоето действие к объекту в кадре}
if(currentFrame==3){какоето действие к объекту в кадре}
 
и по сути мне 100 раз придется писать:
bнормер_mc = parent.getChildByName("bнормер_mc") as MovieClip; //но это можно циклом
Или же проще сделать по кадрам, но с проверкой на существования листенера?

Старый 25.11.2010, 16:30
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 19  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Зачем делать мувиклип со сто кадрами, в каждом из которых по кнопке? Я сделаю один класс-контроллер, который будет создавать мне кнопку каждый раз после нажатия (если я правильно понял, что кнопки меняются по нажатию на одну из) и удалять старую. Или, если это одна кнопка, будет просто меняться метод, который срабатывает по enterFrame. Я не могу представить такую ситуацию, где нужно сделать 100 кадров с кнопками, у которых есть обработчик события (sic!) enterFrame.
__________________
тут я

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

Регистрация: Dec 2006
Адрес: 66°32′00″ с. ш. 66°38′00″ в. д.
Сообщений: 85
Цитата:
Вот вам и аналогия)
жаль только заправляете вы свой ламборжини соляркой, и ездите задом на перед ..

нормальные люди используя as3 пишут в классах и используют объекты ... мало кто сможет представить себе мувик с 100 кадрами и кнопками в них ... только разве, что это будет страшный сон ))..

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

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

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


 


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


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