PDA

Просмотр полной версии : Картинка из библиотеки


Fuza67
19.06.2007, 02:56
Привет! подскажите пожалуйста как посредствам AS3 взять пикчу из библиотеки?

etc
19.06.2007, 03:02
Прописать ей класс в либе (можно автогенерируемый), затем создавать соответствующий экземпляр этого класса.

Fuza67
19.06.2007, 03:18
то есть делаешь линкейдж в строчке class вводишь например PicFromLib, и после создаешь

var myPic:BitmapData = new PicFromLib();

Так?

etc
19.06.2007, 03:24
Fuza67, отредактируйте свой пост и оформите код тегами .

Да, именно так. Если возникает ошибка, то new PicFromLib(0,0);.

Fuza67
19.06.2007, 03:36
Благодарю

voy22
16.07.2007, 16:35
Решил дополнить топик:

import flash.display.*;
var bmd:BitmapData = new PicFromLib();
var bm:Bitmap = new Bitmap(bmd);
addChild(bm);

etc
16.07.2007, 17:07
Решил дополнить топик:

import flash.display.*;
var bmd:BitmapData = new PicFromLib();
var bm:Bitmap = new Bitmap(bmd);
addChild(bm);

В конструктор PicFromLib надо передать ширину и высоту картинки (произвольные), потому как это обязательные параметры. На выходе картинка будет иметь правильные размеры.
Т.е. как-то так:


import flash.display.*;
var bmd:BitmapData = new PicFromLib(0,0);
var bm:Bitmap = new Bitmap(bmd);
addChild(bm);

voy22
16.07.2007, 17:57
Ну не знаю... может так во flex, но в Flash CS3 у работает без параметров и никаких варнингов

etc
16.07.2007, 18:18
Я про Flash CS3 и говорил. У меня без параметров вываливается Argument count mismatch.

voy22
17.07.2007, 11:23
У меня вылазит тоже самое с параметрами =)))
Ну не вопрос, давай по другому...
http://www.regprofile.com/PicFromLab.zip
Проверь у себя...

etc
17.07.2007, 11:29
ArgumentError: Error #1063: Argument count mismatch on PicFromLib$iinit(). Expected 2, got 0.
at PicFromLab_fla::MainTimeline/PicFromLab_fla::frame1()

У меня Strict-режим включен. Если выключить, то ошибка будет уже run-time, а не compile-time.
Если написать, как я написал, то никаких ошибок уже не будет.

voy22
17.07.2007, 13:11
Пардон, делал в Alpha. :rolleyes:

GydruS
21.07.2007, 06:48
А кто-нибудь может подсказать, как сделать то же самое, только из Shared Library (скажем, libX.swf)?

etc
21.07.2007, 12:55
А зачем шарная либа? Загрузил обычный swf, у которого картинка в экспорте с классом. После загрузке обращаешься к loaderInfo.applicationDomain.getDefinition(<имя класса картинки>) и создаешь её класс.