Avatar billede hoppe11 Nybegynder
03. juni 2007 - 11:37 Der er 8 kommentarer og
1 løsning

er et object et mc eller txt

hvordan kan jeg se om et object er et movieclip eller textfield?
Avatar billede maqhem Nybegynder
03. juni 2007 - 11:43 #1
trace(Tjek(_root.objekt));
function Tjek(o:Object):String {
    return typeof(o);
}

Ved movieclip returnerer den "movieclip", ved textfield returnerer den "object".
Avatar billede hoppe11 Nybegynder
03. juni 2007 - 11:46 #2
function mc_tree(mc, tab)
{
    for(var key in mc)
    {
        trace(tab+mc[key]);
    }
   
    tab += '\t';
}
var tab = '';
mc_tree(_root, tab);

mit mål er at lave et træ af alle mine movieclip f.eks. men her tracer den kun selve filen som sådan og ikke filen som "eksekveret"
Avatar billede maqhem Nybegynder
03. juni 2007 - 12:15 #3
Du kan vel bruge en rekursiv funktion?

function mc_tree(mc:MovieClip, tab:Number) {
    var ttap:String = new String();
    for(var i:Number = 0; i < tab; i++) {
        ttap += "\t";
    }
    for(var i:String in mc) {
        trace(ttap + mc[i] + " (" + typeof(mc[i]) + ")");
        mc_tree(mc[i], tab + 1);
    }
}
mc_tree(_root, 0);
Avatar billede maqhem Nybegynder
03. juni 2007 - 12:19 #4
Dette er dog lidt mere overskuelig:

function mc_tree(mc:MovieClip, tab:Number) {
    var ttap:String = new String();
    for(var i:Number = 0; i < tab; i++) {
        ttap += "\t";
    }
    for(var i:String in mc) {
        trace(ttap + i + " (" + typeof(mc[i]) + ")");
        mc_tree(mc[i], tab + 1);
    }
}
mc_tree(_root, 0);
Avatar billede maqhem Nybegynder
03. juni 2007 - 12:48 #5
Eller en smule mere avanceret:

var enStreng:String = "test";
var etTal:Number = 986;
function mc_tree(mc:MovieClip, tab:Number, search:String) {
    var ttap:String = new String();
    for(var i:Number = 0; i < tab; i++) {
        ttap += "\t";
    }
    for(var i:String in mc) {
        if(typeof(mc[i]) == search) {
            if(indexOfArray(search)) {
                trace(ttap + i + " = " + mc[i]);
            } else {
                trace(ttap + i);
            }
            mc_tree(mc[i], tab + 1, search);
        }
    }
}
function indexOfArray(search:String):Boolean {
    var writeValue:Array = new Array("string", "number", "array");
    for(var i:Number = 0; i < writeValue.length; i++) {
        if(writeValue[i] == search) {
            return true;
        }
    }
    return false;
}
trace("MOVIECLIPS");
mc_tree(_root, 1, "movieclip");
trace("\nSTRINGS");
mc_tree(_root, 1, "string");
trace("\nNUMBERS");
mc_tree(_root, 1, "number");
trace("\nARRAYS");
mc_tree(_root, 1, "array");

Så må dit behov vidst være dækket, hvis jeg har forstået dig rigtgit :)
Avatar billede hoppe11 Nybegynder
03. juni 2007 - 13:08 #6
ja sådan der :)

men min flash er bygget af funktioner.. jeg havde i tankerne at jeg ville kunne få et overblik over mine movieclips.. ingen af dem kommer med
Avatar billede maqhem Nybegynder
03. juni 2007 - 13:41 #7
Det er formegentligt fordi, dine funktioner, der laver dine movieclips, er definerede efter du har kaldt mc_tree.
Avatar billede hoppe11 Nybegynder
03. juni 2007 - 14:19 #8
ja, det er det jo.. jeg rodede lige lidt rundt i min egen kode :)

smid et svar
Avatar billede maqhem Nybegynder
03. juni 2007 - 23:13 #9
Super
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester