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

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

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

Регистрация: Sep 2012
Сообщений: 204
По умолчанию передача параметра функции в слушателе

Приветствую
Стоит задача передать загруженный xml в функцию, которая будет вызываться по клику кнопки. Если бы я делал все в классах, то тут вопросов нет, передать было бы не проблема. Но делаю я через клипы.
имеет ли вообще смысл подобное?
Код AS3:
function loadPage3(doc:XML){
	var xmlData3:XMLList = XML(doc).data3;
 
	for (var j:int=1; j<14; j++){
		/// тут я пробовал и b[j], все равно не работало
		//this.page3['btn'+j]['btn'+j+'_txt'].text = j+". "+xmlPage3.buttons.@b+j;
		///вот тут компилятор ругается на синтаксис  Syntax error: expecting rightparen before colon
		this.page3['btn'+j].addEventListener(MouseEvent.CLICK, data3buttons(xmlData3:XMLList));
 
	}
}
function data3buttons (e:MouseEvent, doc:XMLList):void{}
в комментариях указал строчку в которой тоже ошибся синтаксисом. По разному пробовал, но что то не так.


Последний раз редактировалось iNils; 18.01.2013 в 03:02.
Старый 18.01.2013, 11:33
Condorcet вне форума Посмотреть профиль Отправить личное сообщение для Condorcet Найти все сообщения от Condorcet
  № 2  
Ответить с цитированием
Condorcet

Регистрация: Mar 2012
Сообщений: 9
в addEventListener передается как бы ссылка на функцию (если посмотришь справку, то увидишь что этому аргументу соответствует тип Function). Ты же пытаешься ее вызвать, причем неправильно, т.к. ниже в заголовке функции указал два аргумента, а вызываешь с одним. Короче говоря, передать твой XML таким образом не выйдет.

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

Регистрация: Oct 2010
Адрес: Харьков
Сообщений: 616
Записей в блоге: 1
Отправить сообщение для strangedk с помощью ICQ Отправить сообщение для strangedk с помощью Skype™
Цитата:
Сообщение от pomuс Посмотреть сообщение
Приветствую
Стоит задача передать загруженный xml в функцию, которая будет вызываться по клику кнопки. Если бы я делал все в классах, то тут вопросов нет, передать было бы не проблема. Но делаю я через клипы.
имеет ли вообще смысл подобное?
Код AS3:
function loadPage3(doc:XML){
	var xmlData3:XMLList = XML(doc).data3;
 
	for (var j:int=1; j<14; j++){
		/// тут я пробовал и b[j], все равно не работало
		//this.page3['btn'+j]['btn'+j+'_txt'].text = j+". "+xmlPage3.buttons.@b+j;
		///вот тут компилятор ругается на синтаксис  Syntax error: expecting rightparen before colon
		this.page3['btn'+j].addEventListener(MouseEvent.CLICK, data3buttons(xmlData3:XMLList));
 
	}
}
function data3buttons (e:MouseEvent, doc:XMLList):void{}
в комментариях указал строчку в которой тоже ошибся синтаксисом. По разному пробовал, но что то не так.
Можно вынести xmlData3 вне функции loadPage3, тогда обработчик будет иметь доступ к xmlData3.
Но тут смотря где находится слушатель, и как организована работа с данными. В клипах не получится получить доступ к данным в других кадрах
__________________
adobe AS3 manual

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

блогер
Регистрация: Feb 2008
Адрес: http://playtika.com
Сообщений: 1,119
Записей в блоге: 5
Отправить сообщение для СлаваRa с помощью ICQ Отправить сообщение для СлаваRa с помощью Skype™
советую почитать статью о слушателях с параметрами
__________________
местонахождение

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

Регистрация: Jan 2012
Адрес: (0;0;0) относительно меня
Сообщений: 82
Отправить сообщение для am_devcorp с помощью Skype™
Или написать свой евент с хмл - переменной внутри себя

А, ну это #5 в статье в предыдущем посте
__________________
cats are supreme beings

Старый 18.01.2013, 21:24
pomuс вне форума Посмотреть профиль Отправить личное сообщение для pomuс Найти все сообщения от pomuс
  № 6  
Ответить с цитированием
pomuс

Регистрация: Sep 2012
Сообщений: 204
СлаваRa хорошая тема. Спасибо, пригодится

А чего теперь даже не поблагодарить? Сняли с форума этот изыск?

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

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

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


 


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


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