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

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

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

Регистрация: Mar 2008
Адрес: Ростов-на-Дону
Сообщений: 354
Цитата:
Сообщение от Furinax Посмотреть сообщение
Просто есть люди, которые считают внешней библиотекой - только swf файл.
Если именно внешней, то может, они и правы. Я, по крайней мере, не нашёл способа подгружать ресурсы из swc в рантайме (хотя это не значит, что такого способа нет). Только на этапе компиляции.

Добавлено через 4 минуты
Цитата:
Сообщение от Felicast Посмотреть сообщение
swc - это просто набор классов, так что его и можно считать библиотекой.
В swc зашиваются не только классы, но и ресурсы (подключённые с помощью метатега Embed либо находящиеся в библиотеке и используемые в коде). Так что просто набором классов swc назвать никак нельзя.

Старый 31.10.2009, 10:52
Furinax вне форума Посмотреть профиль Отправить личное сообщение для Furinax Найти все сообщения от Furinax
  № 12  
Ответить с цитированием
Furinax
[+1 02.09.15]

Регистрация: Mar 2009
Адрес: Moscow
Сообщений: 469
У меня задание, в котором требуется подгружать всю графику из внешеней библиотеки.
Я связал нужные мне мувиклипы с пустыми автоматически создаваемыми классами AS (export fo ActionScript, export in first frame). Далее из этого файла вытаскиваю swc. Связываю его с новым файлом. Пишу основной класс, который на этапе выполнения создает эти самые мувиклипы слинкованные с классами.

Такой подход можно считать использованием внешней библиотеки?
Или же получается, что после компиляции все элементы уже будут содержаться в скомпилированном виде в новом файле?

Старый 31.10.2009, 11:22
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 13  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
Цитата:
Сообщение от Furinax Посмотреть сообщение
Такой подход можно считать использованием внешней библиотеки?
Или же получается, что после компиляции все элементы уже будут содержаться в скомпилированном виде в новом файле?
Да, после компиляции все элементы будут в основном swf. swc используется как хранилище только на этапе компиляции.

Старый 31.10.2009, 11:31
Furinax вне форума Посмотреть профиль Отправить личное сообщение для Furinax Найти все сообщения от Furinax
  № 14  
Ответить с цитированием
Furinax
[+1 02.09.15]

Регистрация: Mar 2009
Адрес: Moscow
Сообщений: 469
Тогда получается, что все таки swf файл, содержищай в себе все необходимо и есть внешняя библиотека...

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

Регистрация: Feb 2008
Адрес: Череповец
Сообщений: 623
Отправить сообщение для Felicast с помощью ICQ
Цитата:
В swc зашиваются не только классы, но и ресурсы (подключённые с помощью метатега Embed либо находящиеся в библиотеке и используемые в коде). Так что просто набором классов swc назвать никак нельзя.
как раз набор классов. каждый ресурс представляется классом.
хотя на самом деле swc - обычный zip-архив, в котором лежат ресурсы, скомпилированные swf-ки и xml файл, содержащий список доступных классов

Furinax, вас честно говоря не понятно. то что тут обсуждалось, относилось к расположению классов в отдельной библиотеке и внедрением в swf во время компиляции. из ваших вопросов как раз и следовал данный вывод.
если вам нужно подгружать библиотеку во время выполнения, тогда swf - это то, что вам нужно
__________________
я могу стать всем, если только захочу

Старый 31.10.2009, 21:59
Furinax вне форума Посмотреть профиль Отправить личное сообщение для Furinax Найти все сообщения от Furinax
  № 16  
Ответить с цитированием
Furinax
[+1 02.09.15]

Регистрация: Mar 2009
Адрес: Moscow
Сообщений: 469
Сделал так, чтобы все грузилось на этапе выполнения из swf файлы. Но вот проблема с RadioButton всплыла вновь.
Я применил способ описанный здесь http://www.murmadillo.tut.su/html/swf-lib.htm следующим образом:
Код AS3:
private function setupRadioButtons ():void {
	rbg = new RadioButtonGroup("question");
	createRadioButton("Yes", rbg, 230, 250);
	createRadioButton("No", rbg, 230, 280);
};
 
private function createRadioButton(rbLabel:String,rbg:RadioButtonGroup, X:Number, Y:Number):void {
	var rdBtn:Class = ldr.contentLoaderInfo.applicationDomain.getDefinition ("fl.controls.RadioButton")as Class;
	var disOb1:DisplayObject;
	var rb:Object;
	addChild (disOb1 = new rdBtn);
	rb = disOb1 as Object;		
	rb.move (X, Y);
	rb.group = rbg;
	rb.label = rbLabel;
	rb.setStyle ("textFormat", format);
	rb.addEventListener (MouseEvent.CLICK,checkAnswer);
};
На этапе выполнения возникает ошибка:
TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
at fl.controls::RadioButton/drawLayout()
at fl.controls::LabelButton/draw()
at fl.controls::RadioButton/draw()
at fl.core::UIComponent/callLaterDispatcher()
Т.е. получается он до сих пор не видит компоненты.
Никаких мыслей как с этим бороться у меня даже не приходит в голову...

Вот код основного класса swf-файла, используемого в качестве библиотеки.
Код AS3:
package rmtest {
	import flash.display.MovieClip;
	import fl.controls.RadioButton;
 
	public class LibraryClass extends MovieClip {
 
	public var radBtnClass:Class = RadBtn;
 
		public function LibraryClass() {
		};
	};
}


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

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

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


 


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


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