nico_m40 | Bonjour à tous,
Je rencontre un petit problème. Il s'agit d'un chargement d'image avec une barre de chargement : Voir code ci-dessous. Celui-ci fonctionne très bien lorsque j'utilise un loadMovie pour charger l'image. Mais j'y ai rajouté une fonction pour lisser l'image (loadBitmapSmoothed), et là, cela ne fonctionne plus.
Est ce que quelqu'un peut m'aider ?
Merci à tous.
Code :
- stop();
- var longueurBarre:Number = 100;//Taille de la barre à 100%
- //fonction pour le lissage d'images
- import flash.display.*;
- function loadBitmapSmoothed(url:String, target:MovieClip) {
- var bmc:MovieClip = target.createEmptyMovieClip("bmc",target.getNextHighestDepth());
- var listener:Object = new Object();
- listener.tmc = target;
- listener.onLoadInit = function(mc:MovieClip) {
- mc._visible = false;
- var bitmap:BitmapData = new BitmapData(mc._width, mc._height, true);
- this.tmc.attachBitmap(bitmap, this.tmc.getNextHighestDepth(), "auto", true);
- bitmap.draw(mc);
- };
- var loader:MovieClipLoader = new MovieClipLoader();
- loader.addListener(listener);
- loader.loadClip(url, bmc);
- }
- //fin de fonction pour le lissage d'images
- //importation de l'image
- url_image = "001.jpg";
- createEmptyMovieClip("zone_image", 1);
- loadBitmapSmoothed(url_image,zone_image);
- zone_image._alpha = 0;
- //chargement avec barre de progression
- pourcentage_txt.text="";
- barre_charg._width = 0;
- this.onEnterFrame = function():Void
- {
- var total:Number = zone_image.getBytesTotal();
- var charge:Number = zone_image.getBytesLoaded();
- pourcentage = Math.round(charge/total*100);
- if(pourcentage < 100){
- pourcentage_txt.text = pourcentage+" %";
- barre_charg._width = pourcentage * (longueurBarre / 100);
- }
- if(pourcentage == 100){
- delete this.onEnterFrame;
- pourcentage_txt.text ="";
- barre_charg._width = 0;
- contour_barre_charg._alpha = 0;
- //affichage de l'image
- zone_image._alpha = 100;
- }
- }
|
|