Форум 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=135970)

zionko 06.02.2010 02:13

установить размер изображения
 
вот такой скрипт

//Check to see if the banner should be reset
if (imageCounter>=banners.length) {
imageCounter = 0;
}
//Load banner image
var imageLoader:MovieClipLoader = new MovieClipLoader();
imageLoader.loadClip("img/"+imagePaths[imageCounter],bannerContainer_mc);
var loadingListener:Object = new Object();
loadingListener.onLoadComplete = function() {
play();


берет из xml изображение
как можно подправить чтобы можно было вручную поставить размер картинки ( на данный момент он берет 100% )

udaaff 06.02.2010 02:33

Код AS1/AS2:

var mc:MovieClip = createEmptyMovieClip("mc", 0);
 
var mcl:MovieClipLoader = new MovieClipLoader();
mcl.addListener(this);
mcl.loadClip("img.jpg", mc);
 
function onLoadInit(target:MovieClip):Void
{
        target._width = 100;
}

Оформляйте свой код, иначе читать затруднительно.

zionko 07.02.2010 02:04

как то не получилось

если можно по подробней тут

просто не сильно селен в action скриптах =(

udaaff 07.02.2010 02:47

Цитата:

Сообщение от zionko (Сообщение 884604)
как то не получилось

если можно по подробней тут

просто не сильно селен в action скриптах =(

Покажите как получилось, в таком случае.

zionko 07.02.2010 11:41

mcl.loadClip("img.jpg", mc);

это указывает на картинку
а у меня картинка берется из xml файла
imageLoader.loadClip("img/"+imagePaths[imageCounter],bannerContainer_mc);
папка img и дальше картинка

Добавлено через 1 минуту
загрузка xml
Код AS1/AS2:

//Load from XML File
stop();
//Banner
var banners:Array = new Array();
//Image Path
var imagePaths:Array = new Array();
//Link URL
var links:Array = new Array();
//Body Text
var bodyTexts:Array = new Array();
//
var imageTime:Number;
//
var numberOfBanners:Number;
//
var isRandom:String;
//
var showHeader:String;
//
var bannersXML:XML = new XML();
bannersXML.ignoreWhite = true;
bannersXML.load("banners.xml");
bannersXML.onLoad = function(success) {
        if (success) {
                trace("XML LOADED");
                imageTime = parseInt(this.firstChild.firstChild.firstChild)*1000;
                numberOfBanners = parseInt(this.firstChild.childNodes[1].firstChild);
                isRandom = this.firstChild.attributes["isRandom"];
                showHeader = this.firstChild.childNodes[2].attributes["showHeader"];
 
                var bannerSequence:Array = new Array();
                if (isRandom == "true") {
                        //Make a random sequence
                        while (bannerSequence.length<numberOfBanners) {
                                newRandomNumber = random(numberOfBanners);
                                //Make sure that the random one chosen is not already chosen
                                for (var i = 0; i<=bannerSequence.length; i++) {
                                        if (newRandomNumber != bannerSequence[i]) {
                                                alreadyThere = false;
                                        } else {
                                                alreadyThere = true;
                                                break;
                                        }
                                }
                                //Add only random values that aren't in the array
                                if (!alreadyThere) {
                                        bannerSequence.push(newRandomNumber);
                                }
                        }
                } else {
                        for (var i = 0; i<numberOfBanners; i++) {
                                bannerSequence.push(i);
                        }
                }
        }
 
        //Read XML in the Random Order Chosen
        for (var i = 0; i<numberOfBanners; i++) {
                banners.push(this.firstChild.childNodes[2].childNodes[bannerSequence[i]].firstChild.firstChild.toString());
                bodyTexts.push(this.firstChild.childNodes[2].childNodes[bannerSequence[i]].childNodes[1].firstChild.nodeValue);
                imagePaths.push(this.firstChild.childNodes[2].childNodes[bannerSequence[i]].childNodes[2].firstChild.nodeValue);
                links.push(this.firstChild.childNodes[2].childNodes[bannerSequence[i]].childNodes[3].firstChild.nodeValue);
        }
        play();
};
//Start the image counter at 0
var imageCounter = 0;


загрузка картинки и текста
Код AS1/AS2:

stop();
//Check to see if the banner should be reset
if (imageCounter>=banners.length) {
        imageCounter = 0;
}
//Load banner image 
var imageLoader:MovieClipLoader = new MovieClipLoader();
imageLoader.loadClip("img/"+imagePaths[imageCounter],bannerContainer_mc);
var loadingListener:Object = new Object();
loadingListener.onLoadComplete = function() {
        play();
        //Display Header
        if (showHeader == "true") {
                imageText_mc.headerTxt.text = banners[imageCounter].toString();
        } else {
                imageText_mc.headerTxt.text = "";
                imageText_mc._alpha = 0;
        }
        //Button and Link Handling
        if (links[imageCounter] != null) {
                trace("LINK : "+links[imageCounter]);
                bannerContainer_mc.onRelease = function() {
                        getURL(links[imageCounter], "_blank");
                };
        } else {
                delete bannerContainer_mc.onRelease;
        }
};
imageLoader.addListener(loadingListener);


udaaff 07.02.2010 17:45

Что-то не видно, где у вас тут размер устанавливается. И в примере, который я привел, по onLoadInit действия с изображением производятся, а не по onLoadComplete.

zionko 07.02.2010 17:52

размер он берет из картинки
тость если ширина картинки 200 пикселей то он и покажет 200

а я хотел подправить так чтобы он любую картинку и сам ставил размер к примеру 300, какой бы не-была картинка ширина будет всегда 300

udaaff 07.02.2010 18:12

Код AS1/AS2:

loadingListener.onLoadInit = function() {
 
        bannerContainer_mc._width = 300;


zionko 08.02.2010 00:14

пробовал ставить вот так

он показывает очень темные картинки как будто затемняет их

Код AS1/AS2:

//Load banner image  
var imageLoader:MovieClipLoader = new MovieClipLoader();
imageLoader.loadClip(imagePaths[imageCounter],bannerContainer_mc);
loadingListener.onLoadInit = function() {
 
        bannerContainer_mc._width = 300;
var loadingListener:Object = new Object();
loadingListener.onLoadComplete = function() {


udaaff 08.02.2010 01:00

Выкладывайте исходник с необходимыми файлами.


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

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