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

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

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

Регистрация: Feb 2013
Сообщений: 51
По умолчанию Попытка экспорта символов в FlashDevelop

В общем у меня возникла такая проблема, создал проект в FlashDevelop и в Flash CS6, проект Flash CS6 сохранил в папке src проекта FlashDevelop.
Далее, в Свойствах в Flash, в поле класс, указал Main.
Создал символ в флеше, экспортировал его в AS.
В классе main, вывел его на экран таким образом.
Код AS3:
package 
{
   import flash.display.Sprite;
   import flash.display.MovieClip;
 
   public class Main extends Sprite
   {
      private var circle:MovieClip = new mc_circle();
 
      public function Main ():void
      {
 
         circle.x = 350;
         circle.y = 60;
 
		  addChild(circle);
 
      }
}
}
mc_circle - это класс символа.
Все вывело, символ появился в заданных координатах. Далее, решил создать новый класс, создал экземпляр этого класса в классе Main, и сделал точно так же, в результате символ не выводился. Сам класс видит, писал trace. Запуск приложения делаю из Flash. Как решить эту проблему? уже и пробовал, экспортировать swc и обращаться и всеравно тишина. Как я понял, второй класс не связан со сценой. Но решить эту проблему так и не удалось, в Main все работает, а в другом классе тишина. Помогите решить эту проблему.

Добавлено через 19 минут
попробовал запуск во flashdevelop, и попробовал вывести модели из swc на сцену, swc лежит в lib.
В итоге, опять же символ вывелся в главном классе, а в остальных не выводится, уже категорически не знаю в чем дело.
Код AS3:
package 
{
 
	import flash.display.Sprite;
	import flash.events.Event;
 
 
	[Frame(factoryClass="Preloader")]
	public class Main extends Sprite 
	{
		public _cl:First = new First();
 
		public function Main():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		private function init(e:Event = null):void 
		{	
			addChild(new cub()); //беру символ из swc
			removeEventListener(Event.ADDED_TO_STAGE, init);
			// entry point
		}
 
	}
 
}

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

Регистрация: Jan 2014
Сообщений: 14
Код AS3:
package
{
	import flash.display.Sprite;
	import flash.display.Stage;
	import flash.display.StageScaleMode;
	import flash.events.Event;
 
	public class DocumentRoot extends Sprite
	{
		// Храним сцену в статической переменной
		public static var _st_:Stage;
 
		// constructor code
		public function DocumentRoot()
		{	
			// Инициализирует переменную сцены для обращения к ней из любого места программы
			if ((DocumentRoot._st_=stage)) this.InitProject();
			else this.addEventListener(Event.ADDED_TO_STAGE, this.InitProject);
		}
 
		private function InitProject(e:Event = null):void 
		{
			if (e)
			{
				this.removeEventListener(Event.ADDED_TO_STAGE, this.InitProject);
				DocumentRoot._st_ = stage ;
			}
			stage.scaleMode = StageScaleMode.SHOW_ALL;
			// Убирает рамку объекта, если он в фокусе
			stage.stageFocusRect = false;
			// ... далее код самой программы, например, new Main();
			new Main();
		}
 
 
	}
} 
 
class Main
{
	public function Main()
	{
		// Обращение к сцене через статическую переменную
		DocumentRoot._st_.addChild(new cub())
	}
}

Старый 26.01.2014, 01:43
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 3  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Этот код для FD?)

Старый 26.01.2014, 02:50
dimaMJ вне форума Посмотреть профиль Отправить личное сообщение для dimaMJ Найти все сообщения от dimaMJ
  № 4  
Ответить с цитированием
dimaMJ

Регистрация: Feb 2013
Сообщений: 51
Цитата:
Сообщение от es2 Посмотреть сообщение
Код AS3:
package
{
	import flash.display.Sprite;
	import flash.display.Stage;
	import flash.display.StageScaleMode;
	import flash.events.Event;
 
	public class DocumentRoot extends Sprite
	{
		// Храним сцену в статической переменной
		public static var _st_:Stage;
 
		// constructor code
		public function DocumentRoot()
		{	
			// Инициализирует переменную сцены для обращения к ней из любого места программы
			if ((DocumentRoot._st_=stage)) this.InitProject();
			else this.addEventListener(Event.ADDED_TO_STAGE, this.InitProject);
		}
 
		private function InitProject(e:Event = null):void 
		{
			if (e)
			{
				this.removeEventListener(Event.ADDED_TO_STAGE, this.InitProject);
				DocumentRoot._st_ = stage ;
			}
			stage.scaleMode = StageScaleMode.SHOW_ALL;
			// Убирает рамку объекта, если он в фокусе
			stage.stageFocusRect = false;
			// ... далее код самой программы, например, new Main();
			new Main();
		}
 
 
	}
} 
 
class Main
{
	public function Main()
	{
		// Обращение к сцене через статическую переменную
		DocumentRoot._st_.addChild(new cub())
	}
}
спасибо, пробовал, но в других классах опять же тишина, обьекты не добавляются на сцену. а я не хочу в одном as файле писать все )

Добавлено через 4 минуты
если что инфу про экспорт брал тут, но получилось только так же как и в уроках, в классе main, а в других нет.
http://www.regul-flash.com/pages/kom...u-v-flash-ide/
http://nub.com.ua/2011/09/display-ob...y-list-in-as3/

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

Регистрация: Jan 2014
Сообщений: 14
Цитата:
Сообщение от dimaMJ Посмотреть сообщение
спасибо, пробовал, но в других классах опять же тишина, обьекты не добавляются на сцену. а я не хочу в одном as файле писать все )
...
Незамысловатая мысль, которую я пытаюсь выразить, сводится к следующему:
Обращение к сцене через статическую переменную (в данном примере это DocumentRoot._st_) в каждом классе, где требуется сцена
Либо как вариант можно каждый класс расширять самим Stage, тогда обращение к сцене будет через указатель this - но это по-моему уже "велосипед"

Старый 26.01.2014, 11:59
dimaMJ вне форума Посмотреть профиль Отправить личное сообщение для dimaMJ Найти все сообщения от dimaMJ
  № 6  
Ответить с цитированием
dimaMJ

Регистрация: Feb 2013
Сообщений: 51
Цитата:
Сообщение от es2 Посмотреть сообщение
Незамысловатая мысль, которую я пытаюсь выразить, сводится к следующему:
Обращение к сцене через статическую переменную (в данном примере это DocumentRoot._st_) в каждом классе, где требуется сцена
Либо как вариант можно каждый класс расширять самим Stage, тогда обращение к сцене будет через указатель this - но это по-моему уже "велосипед"
а как собственно обратиться в другом классе к этой статической перемене ?

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

Регистрация: Jan 2014
Сообщений: 14
Цитата:
Сообщение от dimaMJ Посмотреть сообщение
а как собственно обратиться в другом классе к этой статической перемене ?
Уже обсуждалось:
http://www.flasher.ru/forum/showthread.php?t=142177

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

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,918
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
Offtop:Ребят, я уже день, как установил FD, но до сих пор не понял, зачем делать проект в обеих средах? В чем вообще преимущество FD, если собирать всё равно в Flash?

Старый 26.01.2014, 13:13
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 9  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
FD это редактор кода, настоящий, а адоби флеш, это инструмент для создания анимации.
И Вы немного ошиблись, рисуют в адоби, а собирают в FD. И за один день Вы разницы не заметите, хотя я сразу её почувствовал. Но вот теперь я его считаю самым лучшим и жить без него не смогу.

Старый 26.01.2014, 16:34
dimaMJ вне форума Посмотреть профиль Отправить личное сообщение для dimaMJ Найти все сообщения от dimaMJ
  № 10  
Ответить с цитированием
dimaMJ

Регистрация: Feb 2013
Сообщений: 51
вот проект, в классе DocumentRoot.as все работает, квадрат выводит на экран, в классе Mains.as тишина.
Вложения
Тип файла: rar New Project.rar (16.8 Кб, 10 просмотров)

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

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

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


 


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


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