Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Объекты из Библиотеки (http://www.flasher.ru/forum/showthread.php?t=116269)

Flcn 24.09.2008 21:35

Объекты из Библиотеки
 
При написании Фотогалереи возник вопрос, можно ли при просмотре изображения в большом расшерении (посли нажатия на превью) загружать объекты прямо из библиотеки (не помещая их зарание на экран), в формате img[i], где и это индентификатор Изображения? или хотябы img1 и тп
Зарание благодарен

scarbo 24.09.2008 22:01

Конечно,циклом

Flcn 24.09.2008 22:15

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


ps нашёл в FAQ похожие темы, но там не слова про библиотеку....

NoCD 25.09.2008 00:30

Код:

var number_img:Number=10 //количество мувиков
for(i=0;i<=number_img;i++)
{
attachMovie("img"+i,"name"+i,i)
_root["name"+i]._x=50*i+100
_root["name"+i]._y=50*i+100
}

img - мувики в библиотекe с uменaмu img1,img2,img3....imgN

Flcn 28.09.2008 02:58

NoCD
странно но у меня не работает.

для проверки создал новый документ, вставил кнопку, поместил в библиотеку JPG (10.jpg) затем переконвертировал его в мувиклип "img1"

в кнопку вставил следующий скрипт
Код:

on(release){
        attachMovie (img1,pic1,1);
        _root.pic1._x = 100;
        _root.pic1._y = 100;
}

но при нажатии нечего не происходит, хотя обработчик сробатывает... возможно что либо необходимо вставить перед attachMovie ?? или " " не стоят.. многое перепробовал, но увы нечего не помогло.. ктонибуть знает в чём дело?

Mur4ik 28.09.2008 04:11

просто картинки напрямую из библиотеки грузить нельзя с помошью attachMovie();
для этого нужно создать мувиклип в котором будет нужная картинка
Код:

//если изображение находится внутри клипа mcImageHolder
var mcContainer:MovieClip = this.attachMovie("mcImageHolder", "mcImageHolder", this.getNextHighestDepth());

либо использовать метод attachBitmap() класса BitmapData;
вот пример:
Код:

import flash.display.BitmapData;
// переменной linkageId присвоить линкейдж нейм нужного изображения в библиотеке
var linkageId:String = "img";
var myBitmapData:BitmapData = BitmapData.loadBitmap(linkageId);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());


Flcn 28.09.2008 14:53

хоть убейте, по прежнебу не работает.. =(
извиняюсь за наглость, но может ктонить написать скромный код, как в 5м посте и приадтачитьсюда.. это и минуты не займёт.. =(
зарание благодарен..

NoCD 28.09.2008 16:21

Вложений: 1
если твои фотки будут заранее внесены в библиотеку, например img1...imgN ?
потом тебе надо, что бы превьюшные мувики увеличивались в размере через _scale или подгружались отдельные большего размера фотки из библиотеки ?

вот это подойдёт?

Mur4ik 28.09.2008 18:06

Что ж Вы думать то совсем не хотите... что у Вас не работает?

в первом кадре пишете:
Код:

import flash.display.BitmapData;
// переменной linkageId присвоить линкейдж нейм нужного изображения в библиотеке
var linkageId:String = "img";
var myBitmapData:BitmapData = BitmapData.loadBitmap(linkageId);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());

в библиотеке изображению прописываете linkage - "img" (без ковычек)

на Вашей кнопке пишете:
Код:

on (release) {
        mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
        mc._x = 100;
        mc._y = 100;
}

жмете на кнопку и на сцене появляется Ваше изображение...

но еще лучше отказаться от кода на клипах/кнопках и написать в первом кадре вот так:
Код:

import flash.display.BitmapData;
// переменной linkageId присвоить линкейдж нейм нужного изображения в библиотеке
var linkageId:String = "img";
var myBitmapData:BitmapData = BitmapData.loadBitmap(linkageId);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
// Вашей кнопке даете инстанснейм btnMyButton
btnMyButton.onRelease = function():Void
{
    mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
    mc._x = 100;
    mc._y = 100;
};

при нажатии на кнопку на сцене появиться клип mc а в нем Ваше изображение из библиотеки...

Flcn 29.09.2008 23:02

Всем огромное спасибо, разобрался..
надо было всеволишь щелкнуть на опции мувиклипа в библиотеке, а поставить галочку напротив Export fot ActionScript...

а так всё перепробовал.. ) чо тока про ся не думал)


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

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