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

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

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

Регистрация: Jul 2009
Сообщений: 77
По умолчанию как вызвать функцию из класса?

Основной код находится в временной шкале в fla-файле, создаю дополнительный класс, мне нужно вызвать функцию основного кода из этого класса, как?

Старый 26.03.2010, 08:18
dmitriev вне форума Посмотреть профиль Отправить личное сообщение для dmitriev Найти все сообщения от dmitriev
  № 2  
Ответить с цитированием
dmitriev
 
Аватар для dmitriev

Регистрация: Jun 2007
Адрес: Челябинск
Сообщений: 303
Отправить сообщение для dmitriev с помощью ICQ
Вы класс создаёте на временной шкале? Если да, то передайте в коструктор ссылку на этот ваш главный мувик, как-то так:
Код AS3:
var foo:MyClass = new MyClass(this);
__________________
O God! The Aftermath.

Старый 26.03.2010, 09:06
filepark вне форума Посмотреть профиль Отправить личное сообщение для filepark Найти все сообщения от filepark
  № 3  
Ответить с цитированием
filepark

Регистрация: Jul 2009
Сообщений: 77
вероятно я непонятно объяснил
Код AS3:
//код на временной шкале
var myButtom:MyButton=new MyButton();
addChild(myButtom);
function myFunc(){
	trace("работает!");
}
Код AS3:
//класс MyButton
package {
	import flash.display.MovieClip;
	import flash.events.MouseEvent;
	import flash.events.Event;
 
	public class MyButton extends MovieClip {
		public function MyButton() {
			addEventListener(MouseEvent.CLICK, clickHandler);
		}
		private function clickHandler(event:Event):void {
			myFunc();
		}				
	}
}
//очевидно нужно указать, что myFunc(); находится
//не в этом классе, а на временной шкале, как?


Последний раз редактировалось filepark; 26.03.2010 в 09:26.
Старый 26.03.2010, 10:53
zuxul вне форума Посмотреть профиль Отправить личное сообщение для zuxul Найти все сообщения от zuxul
  № 4  
Ответить с цитированием
zuxul

Регистрация: Dec 2009
Адрес: 59°13′N, 39°54′E
Сообщений: 445
Записей в блоге: 1
не проще сделать так?
Код AS3:
var myButtom:MyButton=new MyButton();
addChild(myButtom);
function myFunc(){
	trace("работает!");
}
myButton.addEventListener(MouseEvent.CLICK, myFunc);
Если же Вам все-таки надо то, что Вы надумали, можно сохранить myFunc в переменную класса, как то так:
Код AS3:
myButton.setMyFunc(myFunc)
Код AS3:
package {
	import flash.display.MovieClip;
	import flash.events.MouseEvent;
	import flash.events.Event;
 
	public class MyButton extends MovieClip {
		private var handler:Function;
		public function MyButton() {
			addEventListener(MouseEvent.CLICK, clickHandler);
		}
		public function setMyFunc(func:Function):void {
			handler = func;
		}
		private function clickHandler(event:Event):void {
			handler();
		}				
	}
}

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

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

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


 


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


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