Просмотр полной версии : Отображение объекта на сцене.
D1KTAT0R
07.06.2012, 17:49
Всем привет!
Есть у меня объект наследуемый от MovieClip и есть bitmap.
Как можно привязать этот битмап к этому объекту, чтобы при добавлении его на сцену он рисовался?
Я мог неправильно сформулировать, заранее извиняюсь, если так то спрашивайте - дополню как смогу.
Среда FlashDevelop
Нужно внедрить битмапу в класс вашего мувика, и просто добавить её в этот мувик addChild.
package
{
import flash.display.Bitmap;
import flash.display.MovieClip;
public class MyClass extends MovieClip
{
[Embed(source = "../lib/image.jpg")]
private var ImageClass:Class;
private var bm:Bitmap = new ImageClass();
public function MyClass()
{
addChild(bm);
}
}
}
изображение лежит в папке lib проекта.
D1KTAT0R
07.06.2012, 18:07
samana, а если не сложно - самый простой примерчик с реализацией только этой фичи можно? не сочтите за наглость ))) буду очень благодарен.
class Extended extends MovieClip
private var b:Bitmap = YourBitmapClass()
public function Extended () { this.addChild(b) }
Точнее, при добавлении чего на сцену что должно рисоваться? Битмап должен добавляться внутрь клипа? Где лежит битмап?
D1KTAT0R
08.06.2012, 10:12
samana, делал аналогичным путем - не вышло, знаю что в какой то мелочи затык но видимо смотрю и не вижу. Ошибок не выдает но рисунок на сцене не видно.
DaFive, Суть - привязать рисунок к классу, чтобы при создании экземпляра этого класса на сцене появлялся рисунок. Битмап должен добавляться я так понимаю внутри класса наследуемого от клипа. Лежит в папке LIB. Приём samana в общем то верен, но почему то у меня не сработал.
[Embed(source = "../lib/image.jpg")]
private var ImageClass:Class;
private var bm:Bitmap = new ImageClass();
public function MyClass()
{
addChild(bm);
}
Ну и я не понял каким образом компилятор понимает что именно этот битмап надо связывать с переменной ImageClass?
Даже не знаю, почему у вас не получается. Посмотрите исходник проекта FD, там всё работает.
Ну и я не понял каким образом компилятор понимает что именно этот битмап надо связывать с переменной ImageClass?
Обратите внимание, что после строки внедрения не стоит знака точки с запятой. По этому как я понимаю, компилятор читает это как одну команду
[Embed(source = "../lib/image.jpg")] private var ImageClass:Class;
Могу ошибаться.
D1KTAT0R
08.06.2012, 14:24
Понял где ошибка. Пример очень помог и теперь все встало на свои места. Спасибо!
Я в конструкторе главного класса не добавлял объект а просто создавал его, думая что при создании сработает ЕГО конструктор в котором прописано добавление битмапа. Наивно, но хз - почему то так показалось логичным.
Еще раз хочу всех поблагодорить за участие и помощь.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.