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

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

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

Регистрация: Nov 2008
Адрес: Moscow
Сообщений: 493
Отправить сообщение для Dr_Bra с помощью ICQ
По умолчанию обращение из класса к объектам этого класса

Всем привет
Подскажите, пожалуйста, как правильно обращаться к объектам из класса?
У меня есть основной fla документ, в его библиотеки есть объект card, к которому прикреплен класс PopUpManager. Объект card содержит кнопку, при нажатии на которую должна вызываться функция. При обращении к этой кнопки я допускаю ошибку, помогите разобраться..

Код AS3:
package actionScript
{
	import flash.display.Sprite;
	import fl.transitions.Tween;
	import fl.transitions.easing.*;
 
	public class PopUpManager extends Sprite
	{
		var inTween:Tween;
		var outTween:Tween;
 
		public function PopUpManager():void
		{
			trace("наш класс успешно прикрепися к объекту!!!")
			inTween = new Tween(this, "y", Elastic.easeOut, 5, 550, 1.5, true);
			this.close_mc.addEventListener(Event.MouseEvent.CLICK, outTween)
		 	function outTween(event:MouseEvent):void
			{
				outTween = new Tween(this, "y", Elastic.easeOut, 512.6, 75, 1, true);
			}
		}
	}
}


Последний раз редактировалось Dr_Bra; 18.02.2010 в 17:40.
Старый 18.02.2010, 17:44
dixus вне форума Посмотреть профиль Отправить личное сообщение для dixus Найти все сообщения от dixus
  № 2  
Ответить с цитированием
dixus

Регистрация: Feb 2010
Сообщений: 33
MouseEvent - это класс, а CLICK - его static поле, соответственно вместо
Код AS3:
Event.MouseEvent.CLICK
должно быть
Код AS3:
 MouseEvent.CLICK
а перед объявлением класса нужно добавить
Код AS3:
import flash.events.MouseEvent;

Старый 18.02.2010, 17:54
Dr_Bra вне форума Посмотреть профиль Отправить личное сообщение для Dr_Bra Посетить домашнюю страницу Dr_Bra Найти все сообщения от Dr_Bra
  № 3  
Ответить с цитированием
Dr_Bra
 
Аватар для Dr_Bra

Регистрация: Nov 2008
Адрес: Moscow
Сообщений: 493
Отправить сообщение для Dr_Bra с помощью ICQ
Цитата:
Сообщение от dixus Посмотреть сообщение
MouseEvent - это класс, а CLICK - его static поле, соответственно вместо
Код AS3:
Event.MouseEvent.CLICK
должно быть
Код AS3:
 MouseEvent.CLICK
а перед объявлением класса нужно добавить
Код AS3:
import flash.events.MouseEvent;
поправил код, теперь ошибка такая:
Код AS3:
package actionScript
{
	import flash.events.MouseEvent;
	import flash.display.Sprite;
	import fl.transitions.Tween;
	import fl.transitions.easing.*;
 
	public class PopUpManager extends Sprite
	{
		var inTween:Tween;
		var outTween:Tween;
 
		public function PopUpManager():void
		{
			trace("наш класс успешно прикрепися к объекту!!!")
			inTween = new Tween(this, "y", Elastic.easeOut, 5, 550, 1.5, true);
 
			this.close_mc.addEventListener(MouseEvent.CLICK, outTween)
		 	function outTween(event:MouseEvent):void
			{
				outTween = new Tween(this, "y", Elastic.easeOut, 512.6, 75, 1, true);
			}
		}
	}
}
Изображения
 

Старый 18.02.2010, 18:00
dixus вне форума Посмотреть профиль Отправить личное сообщение для dixus Найти все сообщения от dixus
  № 4  
Ответить с цитированием
dixus

Регистрация: Feb 2010
Сообщений: 33
назовите функцию outTween как-нибудь по-другому, либо на 21ой строке используйте this.outTween вместо outTween

Старый 18.02.2010, 18:11
Dr_Bra вне форума Посмотреть профиль Отправить личное сообщение для Dr_Bra Посетить домашнюю страницу Dr_Bra Найти все сообщения от Dr_Bra
  № 5  
Ответить с цитированием
Dr_Bra
 
Аватар для Dr_Bra

Регистрация: Nov 2008
Адрес: Moscow
Сообщений: 493
Отправить сообщение для Dr_Bra с помощью ICQ
Цитата:
Сообщение от dixus Посмотреть сообщение
назовите функцию outTween как-нибудь по-другому, либо на 21ой строке используйте this.outTween вместо outTween
спасибо

Добавлено через 2 минуты
Код AS3:
package actionScript
{
	import flash.events.MouseEvent;
	import flash.display.Sprite;
	import fl.transitions.Tween;
	import fl.transitions.easing.*;
 
	public class PopUpManager extends Sprite
	{
		var inTween:Tween;
		var outTween:Tween;
 
		public function PopUpManager():void
		{
			trace("наш класс успешно прикрепися к объекту!!!")
			inTween = new Tween(this, "y", Elastic.easeOut, 5, 550, 1.5, true);
 
			close_mc.addEventListener(MouseEvent.CLICK, closed)
		 	function closed(event:MouseEvent):void
			{
				trace("closed")
				outTween = new Tween(this, "y", Elastic.easeOut, 550, 75, 1.5, true);
			}
		}
	}
}
выводит "closed", но следующую строчку не выполняет, почему?

Старый 18.02.2010, 18:26
Fernando Costa вне форума Посмотреть профиль Отправить личное сообщение для Fernando Costa Найти все сообщения от Fernando Costa
  № 6  
Ответить с цитированием
Fernando Costa
 
Аватар для Fernando Costa

Регистрация: Oct 2006
Адрес: simferopol -> kyiv
Сообщений: 2,161
Отправить сообщение для Fernando Costa с помощью ICQ
вложенные функции - зло
__________________
: M F N W :

Старый 18.02.2010, 18:35
Dr_Bra вне форума Посмотреть профиль Отправить личное сообщение для Dr_Bra Посетить домашнюю страницу Dr_Bra Найти все сообщения от Dr_Bra
  № 7  
Ответить с цитированием
Dr_Bra
 
Аватар для Dr_Bra

Регистрация: Nov 2008
Адрес: Moscow
Сообщений: 493
Отправить сообщение для Dr_Bra с помощью ICQ
Цитата:
Сообщение от Fernando Costa Посмотреть сообщение
вложенные функции - зло
как же теперь жить ?)

Старый 18.02.2010, 18:35
dixus вне форума Посмотреть профиль Отправить личное сообщение для dixus Найти все сообщения от dixus
  № 8  
Ответить с цитированием
dixus

Регистрация: Feb 2010
Сообщений: 33
хм, да, прошу прощения за идиотский совет в моем прошлом посте, this.outTween не сработало бы потому же, почему и не работает это сейчас - this внутри вложенной функции обращается к объекту global, а не к тому, внутри метода которого существует.

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

Регистрация: Sep 2002
Сообщений: 30,784
Цитата:
Сообщение от Dr_Bra Посмотреть сообщение
как же теперь жить ?)
Не писать вложенных функций.

Старый 18.02.2010, 18:52
Dr_Bra вне форума Посмотреть профиль Отправить личное сообщение для Dr_Bra Посетить домашнюю страницу Dr_Bra Найти все сообщения от Dr_Bra
  № 10  
Ответить с цитированием
Dr_Bra
 
Аватар для Dr_Bra

Регистрация: Nov 2008
Адрес: Moscow
Сообщений: 493
Отправить сообщение для Dr_Bra с помощью ICQ
Добавлено через 30 секунд
Цитата:
Сообщение от etc Посмотреть сообщение
Не писать вложенных функций.
скажите, полииз, а как мне нужно изменить код, что бы он заработал ?)

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

Теги
класс , обращение , объект
Опции темы
Опции просмотра

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

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


 


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


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