Follow me @Tmeister

Archive for April, 2008

Sitio fuera de línea..

Posted by Tmeister On April - 29 - 2008

Por descuido de mi parte el sitio estuvo fuera de línea unos días, debido a que por tanto trabajo y cansancio se me olvido hacer el pago de la renovación del dominio. Es por ello que aparecían unos horrendos links de publicidad..

Pero bueno al parecer ya todo quedo en orden y aun hay Klr20mg por un bien rato, si es que el trabajo me lo permite. :p

No me olvido de los post prometidos, están en proceso, ya que por estar jugando con mi máquina y querer instalar MacOS en mi Dell y unas cuantas distribuciones de Linux perdí toda la información que tenia… pero bueno.. ya estaré posteando.

Saludos!!

Obteniendo los hijos de un DisplayObject [AS3]

Posted by Tmeister On April - 1 - 2008

Está en una clase simple pero muy útil, al menos para mí, que recorre todos los hijos contenidos en un DisplayObject, la clase cuenta con 2 funciones:

getAllChilds

Regresa todos los hijos contenidos en el “target”

getChildsByType

Regresa solo los hijos que sean de un tipo específico, por ejemplo solo MovieClips, o solo Botones.

DisplayObjectUtils

[as]
package net.tmeister.utils
{
/**
* @author Enrique Chavez aka Tmeister
*/
import flash.display.DisplayObject;
public class DisplayObjectUtils
{
/**
*
* @param target
* @return Array
*/
public static function getAllChilds(target:*):Array
{
var listTmp:Array = []
for (var a = 0; a < target.numChildren; a++ )
{
listTmp.push (target.getChildAt(a) )
}
return listTmp
}
/**
*
* @param target
* @param type
* @return
*/
public static function getChildsByType(target:*, type:*):Array
{
var listTmp:Array = []
for (var a = 0; a < target.numChildren; a++ )
{
if (target.getChildAt(a) is type)
{
listTmp.push (target.getChildAt(a) )
}
}
return listTmp
}
}
}
[/as]

Su uso es el siguiente:

Primero creamos unos Movieclips y unos botones para tener algo que buscar.

[as]
import net.tmeister.utils.DisplayObjectUtils;
import fl.controls.Button

createMovieClips()
createButtons()
getChilds()

function createButtons()
{
for(var a:Number = 0; a<2; a++)
{
var tmp:Button = new Button();
tmp.x = Math.random()*400
tmp.y = Math.random()*400
tmp.label = “buton”+a
addChild(tmp)
}
}
function createMovieClips()
{
for(var a:Number = 0; a<5; a++)
{
var tmp:MovieClip = new MovieClip();
tmp.graphics.beginFill(0x2a2a2a, .5)
tmp.graphics.drawRect(Math.random()*500, Math.random()*300, Math.random()*100, Math.random()*100);
tmp.graphics.endFill();
tmp.name = “mc”+a;
addChild(tmp)
}
}
function getChilds()
{
trace(“All Childs: ” + DisplayObjectUtils.getAllChilds(this) )
trace(“=====================================================================================”)
trace(“Movieclips: ” + DisplayObjectUtils.getChildsByType(this, MovieClip))
trace(“=====================================================================================”)
trace(“Buttons: ” + DisplayObjectUtils.getChildsByType(this, Button))

}

[/as]

Acerca de mi
Enrique Chavez

Enrique Chávez también es conocido como @Tmeister es un desarrollador, emprendedor, poeta y loco.

Geek autodeclarado y apasionado de todo lo que tiene que ver con tecnología y desarrollo.

Cuenta con una experiencia de más de 7 años en el ramo del desarrollo, creando, sobre todo, aplicaciones web en la empresa Sapotek.

A finales del 2008 crea, junto con 3 colegas, la consultoría llamada AureaCode, enfocándose a brindar servicios de desarrollo web en todas sus variantes.

Si necesitas algún tipo de información o consulta por favor no dude en escribir.

View Enrique Chávez's profile on LinkedIn

Carlos Enrique Chavez Garcia's VisualCV

RSS Feed

Links Patrocinados