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

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

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

Регистрация: Oct 2005
Сообщений: 18
По умолчанию class <= addListener

Создаю класс:

class ball{
....

Mouse.addListener(this);
onMouseDown = function{
что-то происходит
}
....
}
это не работает...в классе нельзя создавать слушатель, или я что-то делаю не так?
Только начинаю изучать классы...подскажите

Старый 17.10.2005, 19:38
7thsky™ вне форума Посмотреть профиль Отправить личное сообщение для 7thsky™ Найти все сообщения от 7thsky™
  № 2  
Ответить с цитированием
7thsky™
Flash Aксакал
 
Аватар для 7thsky™

Регистрация: Jun 2005
Сообщений: 636
а ты че так и пишешь? и не работает?

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

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
7thsky™ прав, не зная чего ты добиваешься, нельзя сказать..
вот так(если определять в контрукторе), например, работает:
Код:
class Ball{
	function Ball(){
		var o=this;
		Mouse.addListener(o);
		o.onMouseDown = function(){
			trace('MouseDown');
		}
	}
}

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

Регистрация: Oct 2005
Сообщений: 18
я понимаю, что это дело в конструкторе.
Но почему нельзя сразу повесить слушателя this?

class Ball{
function Ball(){
Mouse.addListener(this);
this.onMouseDown = function(){
trace('MouseDown');
}
}
}

Почему так не работает?...спасибо за помощь

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

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
думаю, потому листером может быть тока объект (это было в AS1: класс и был объектом..,или что-то типа, в ас2 эземпляр с классом разделены)
еще думаю, что все мона, если знать чего добиывешься (а у тебя неясно..)

Старый 23.10.2005, 21:39
7thsky™ вне форума Посмотреть профиль Отправить личное сообщение для 7thsky™ Найти все сообщения от 7thsky™
  № 6  
Ответить с цитированием
7thsky™
Flash Aксакал
 
Аватар для 7thsky™

Регистрация: Jun 2005
Сообщений: 636
Цитата:
Сообщение от Kan
я понимаю, что это дело в конструкторе.
Но почему нельзя сразу повесить слушателя this?

Код:
class Ball{
	function Ball(){
		Mouse.addListener(this);
		this.onMouseDown = function(){
			trace('MouseDown');
		}
	}
}
Почему так не работает?...спасибо за помощь
Твой вариант вообще должен дать ошибку компиляции.

Надо объявлять переменную заранее, или dynamic class
Код:
class Test {
	public var onMouseDown;
	function Test () {
		Mouse.addListener (this);
		this.onMouseDown = function () {
			trace ('MouseDown');
		};
	}
}

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

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

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


 


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


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