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

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

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

Регистрация: Jul 2005
Сообщений: 135
По умолчанию Вставить компонент, имея String

Необходимо вставить во ViewStack 10 (100) компонентов, все компоненты имеют свое названия.
Вначале получаем xml с названием всех компонентов которые необходимо вставить

обычно так:
Код:
var comp:Peoples = new Peoples()
comp.id = "viewPeoples";
views.addChild(comp);
из этого сделать:
Код:
var str:String = "Peoples"
// что здесь писать чтоб из String получить компонент
comp.id = "viewPeoples";
views.addChild(comp);

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

Регистрация: Sep 2002
Сообщений: 30,787
getDefinitionByName

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

Регистрация: Jul 2005
Сообщений: 135
прочитал темы, которые нашел в посике по слову getDefinitionByName

так работает:
Код:
// если в classname написать мой компонент Peoples который я хочу вставить, то уже на работает
// пишет ошибку Variable Peoples is not defined.
public var classname:String = "mx.controls.Button";
var ClassRef:Class = getDefinitionByName(classname) as Class;
var component:DisplayObject = new ClassRef();
addChild(component);
а если пробовать туже кнопку вставить во ViewStack а затем последний вставить на сцену, то уже не работает
Код:
// пишет ошибку
// Type Coercion failed: cannot convert mx.controls::Button@191b56d1 to mx.core.Container.
public var classname:String = "mx.controls.Button";
var ClassRef:Class = getDefinitionByName(classname) as Class;
var component:DisplayObject = new ClassRef();
var views:ViewStack = new ViewStack();
views.addChild(component);
addChild(views);

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

Регистрация: Sep 2002
Сообщений: 30,787
Значит ViewStack не принимает в качестве детей кнопки. Только контейнеры.

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

Регистрация: Jul 2005
Сообщений: 135
Вставляем Button в Container, затем вставляем Container во ViewStack, все работает.

Но когда я пишу собственный компонент, который основан просто на Button, то приложение отказывается его вставлять куда либо, про ViewStack я вообще не говорю даже

ps test.swf и test-debug.swf удалены для уменьшения веса
Вложения
Тип файла: rar test.rar (19.7 Кб, 46 просмотров)

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

Регистрация: Sep 2002
Сообщений: 30,787
Ну так компонент должен быть вкомпилирован в проект. Если он ни разу не использовался и не упоминается, то он не будет вкомпилирован.

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

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

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


 


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


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