by toni September 28th, 2006
componentes
3,170 Lecturas
keyWords flash8 components, dataGrid, drawFocus.
En flash 8, cuando cargas un componente en un clip contenedor (en algunas circunstancias), se visualiza un halo de color verdoso (dependiendo del theme) bastante molesto.

Para evitarlo:
En el .swf con el componente datagrid, escribimos el siguiente código:
Actionscript:
-
myDataGrid.drawFocus = function() {
-
};
-
var myDP:Array =
-
new Array({name:"Chris", price:"Priceless"}, {name:"Nigel", price:"Cheap"});
-
myDataGrid.dataProvider = myDP;
Código de la película base del ejemplo:
Actionscript:
-
loadDG = function ():Void {
-
if (this.activated) {
-
this.activated = false;
-
this._label.text = 'Cargar';
-
holder_mc.unloadMovie();
-
} else {
-
this.activated = true;
-
this._label.text = 'Descargar';
-
holder_mc.loadMovie('DG.swf');
-
}
-
};
-
// --
-
var holder_mc:MovieClip =
-
this.createEmptyMovieClip('holder_mc', this.getNextHighestDepth());
-
// --
-
my_button.onRelease = loadDG;
-
my_button._label.text = 'Cargar';
Ejemplo
This movie requires Flash Player 8
Archivos.zip se ha descargado 278 veces.
by toni September 7th, 2006
actionScript
35,021 Lecturas
Introducción
Nunca se sabe cuando vas a recibir un encargo de este tipo, en realidad, esto era algo que tenía en mente probar desde tiempo atrás. Ahora que he tenido que hacerlo, aprovecho para dejar aquí mi experiencia por si te sirve.
Herramientas necesarias
- Microsoft Excl.
- Microsoft Access.
- Flash
Explicación previa al desarrollo.
Como reza el título, se trata de aprovechar los datos introducidos en una base de datos de Access para trabajar con ellos en una aplicación flash. Por tanto necesitamos exportar los datos en un formato que entienda flash, así pues exportaremos a XML.
Como es posible que los datos originales se encuentren en una hoja de cálculo Excel, veremos como importarla previamente desde Access.
Páginas: 1 2 3 4
by toni June 26th, 2006
actionScript
32,725 Lecturas
En este ejemplo, veremos como gracias a la clase Tween (Flash 8 ) y movieClipLoader este proceso puede ser limpio y sencillo, sin necesidad de utilizar complicadas funciones.
Ejemplo
Antes de pasar a ver el código, un ejemplo de lo que vamos a conseguir.
This movie requires Flash Player 8
Importar la clase de Flash 8 Tween
Actionscript:
-
import mx.transitions.Tween;
-
import mx.transitions.easing.*;
Declarar variables
Como siempre, para mayor claridad, se declaran las variables al principio.
XML:
-
var my_xml:XML = new XML ();
-
my_xml.ignoreWhite = true;
-
var time:Number = 5;
-
var urls:Array = new Array ();
-
var prevMovie:String;
-
var index:Number = 0;
-
var depth:Number = 0;
Cargar XML
Se pobla un array urls con los datos obtenidos de un archivo data.xml Ver xml
Una vez se ha terminado el proceso de leer XML y poblar el array, se llama a la función loadImages en intérvalos de tiempo, estos están supeditados al valor de la variable time. En el ejemplo, las imágenes tendran una rotación de 5 segundos (tiempo * 1000)
Actionscript:
-
my_xml.onLoad = function (success) {
-
if (success) {
-
for (var i = 0; i <this.firstChild.childNodes.length; i++) {
-
urls.push (this.firstChild.childNodes[i].attributes.url);
-
}
-
// - - primera imagen
-
loadImages ();
-
intervalId = setInterval (_root, "loadImages", time * 1000);
-
} else {
-
trace ("Error al cargar el archivo");
-
}
-
};
-
//
-
my_xml.load ("data.xml");
Procesar registros
Se utiliza la variable prevMovie para almacenar el nombre de la imagen que se visualiza actualmente, de forma que al cargar la siguiente, disponemos del nombre de instancia de película cargada para borrar.
Cuando el archivo se ha descargado completamente, se crea una instancia de la clase Tween (para efecto desvanecimiento) y al mismo tiempo, aprovechando los métodos de la clase Tween, se detetecta el fin de la transición (cuando _alpha==100) para descargar la imagen anterior.
Actionscript:
-
loadImages = function ():Void {
-
prevMovie = currentMovie;
-
currentMovie = this.createEmptyMovieClip ("currentMovie" + depth, depth);
-
var mclListener:Object = new Object ();
-
mclListener.onLoadComplete = function (target_mc:MovieClip) {
-
var tween_handler:Object = new Tween (target_mc, "_alpha",
-
Strong.easeOut, 0, 100, 3, true);
-
tween_handler.onMotionFinished = function () {
-
unloadMovie (prevMovie);
-
};
-
};
-
var movieClipLoader:MovieClipLoader = new MovieClipLoader ();
-
movieClipLoader.addListener (mclListener);
-
movieClipLoader.loadClip (urls[index], currentMovie);
-
index == urls.length - 1 ? index = 0 : index++;
-
depth++;
-
};
Slideshow se ha descargado 6,024 veces.