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

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

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

Регистрация: Oct 2006
Адрес: Москва
Сообщений: 889
По умолчанию ошибка при передаче в метод в качестве параметра конструктор

возникает ошибка при передаче в метод в качестве параметра конструктор

есть метод, я ему передаю конструктор класса
Код AS3:
public function setActiveBut(butClass:Class):void {
	var activeBut:SimpleButton;
	for each(var str:String in this.contArr) {
				var but:SimpleButton = this._controls[str].object as SimpleButton;
				but.upState = but.hitTestState;			
//				if(but is butClass) {
//					activeBut = but;
//				}
			}
//			activeBut.upState = activeBut.overState;	
		}
вот собственно так передаю
Код AS3:
controls.setActiveBut((e.target as Object).constructor);

Код:
VerifyError: Error #1023: Переполнение стека.

	at libraries::CustomControls/setActiveBut()
	at libraries::MapDispatcher/mouseEventDispatcher()
	at libraries::MapDispatcher/addEvent()
	at Main/onMouseEvent()
если не передаю параметров и убираю в метода параметр то все ок, в чем проблема?
__________________
Коллекционирую чужие ActionScript Блоги

Старый 22.12.2009, 14:39
Juice_Green вне форума Посмотреть профиль Отправить личное сообщение для Juice_Green Посетить домашнюю страницу Juice_Green Найти все сообщения от Juice_Green
  № 2  
Ответить с цитированием
Juice_Green
 
Аватар для Juice_Green

Регистрация: Dec 2005
Адрес: Новосибирск
Сообщений: 529
Отправить сообщение для Juice_Green с помощью ICQ Отправить сообщение для Juice_Green с помощью Skype™
а зачем собственно конструктор то передавать???

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

Регистрация: Oct 2006
Адрес: Москва
Сообщений: 889
Цитата:
Сообщение от Juice_Green Посмотреть сообщение
а зачем собственно конструктор то передавать???
суть метода такова:
циклом проходит по всем кнопкам, у них меняет стейт на тот что по умолчанию, в случае если это объект конструктора то у него другое действие

вот собственно то что и нуно
__________________
Коллекционирую чужие ActionScript Блоги

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

блогер
Регистрация: Mar 2007
Сообщений: 1,291
Записей в блоге: 5
Отправить сообщение для cleptoman с помощью ICQ
тоже не понял...передайте ссылку на ваш объект и делайте с ним что хотите.
__________________
http://cleptoman.free-lance.ru
achivements: дважды благословлен на воровство. осеяный благодатью

Старый 22.12.2009, 14:46
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 5  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Как бы функция вообще загадочная... технически, она должна была бы выглядеть так, но ё, что вы в ней делаете - не понятно, и, скорее всего не нужно...
Код AS3:
public function setActiveBut(butClass:Class):void
{
	var activeBut:SimpleButton;
	var but:SimpleButton;
	for each (var str:String in this.contArr)
	{
		but = this._controls[str].object as SimpleButton;
		// but может быть null
		but.upState = but.hitTestState;			
		if (but is butClass)
		{
			activeBut = but;
		}
	}
	// activeBut может быть null
	activeBut.upState = activeBut.overState;	
}
Не проще ли было использовать Dictionary?
__________________
Hell is the possibility of sanity

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

Регистрация: Oct 2006
Адрес: Москва
Сообщений: 889
Цитата:
Сообщение от cleptoman Посмотреть сообщение
тоже не понял...передайте ссылку на ваш объект и делайте с ним что хотите.
нее так тоже не подходит, я данный метод использую почти в любой момент, а к ссылкам на объект у меня доступ есть не везде,
__________________
Коллекционирую чужие ActionScript Блоги

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

блогер
Регистрация: Mar 2007
Сообщений: 1,291
Записей в блоге: 5
Отправить сообщение для cleptoman с помощью ICQ
ээээ "объект конструктора" о_О
Код AS3:
public function setActiveBut(someObj:*):void {
if(someObj is SomeClass){
//
}else{
//
}
}
__________________
http://cleptoman.free-lance.ru
achivements: дважды благословлен на воровство. осеяный благодатью

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

Регистрация: Oct 2006
Адрес: Москва
Сообщений: 889
Цитата:
Сообщение от wvxvw Посмотреть сообщение
Как бы функция вообще загадочная... технически, она должна была бы выглядеть так, но ё, что вы в ней делаете - не понятно, и, скорее всего не нужно...
Код AS3:
public function setActiveBut(butClass:Class):void
{
	var activeBut:SimpleButton;
	var but:SimpleButton;
	for each (var str:String in this.contArr)
	{
		but = this._controls[str].object as SimpleButton;
		// but может быть null
		but.upState = but.hitTestState;			
		if (but is butClass)
		{
			activeBut = but;
		}
	}
	// activeBut может быть null
	activeBut.upState = activeBut.overState;	
}
Не проще ли было использовать Dictionary?
хмм Dictionary, хмм пошел читать хелп

Добавлено через 50 минут
Цитата:
Не проще ли было использовать Dictionary?
не совсем понял как в моем случае его использовать?
__________________
Коллекционирую чужие ActionScript Блоги

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

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

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


 


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


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