Avatar billede kalleballe Nybegynder
27. april 2005 - 10:36 Der er 15 kommentarer og
1 løsning

hvordan laver jeg lige et loop der kan det her..

Jeg har:

fade0.knap.onPress = function ()
    {
        _root.region_index = 0;
        _parent._parent.region.text = item0.text;
        _parent._parent.tween_handlerMove.yoyo ();
    };   
fade1.knap.onPress = function ()
    {
        _root.region_index = 1;
        _parent._parent.region.text = item1.text;
        _parent._parent.tween_handlerMove.yoyo ();
    };
    fade2.knap.onPress = function ()
    {
        _root.region_index = 2;
        _parent._parent.region.text = item2.text;
        _parent._parent.tween_handlerMove.yoyo ();
    };
    fade3.knap.onPress = function ()
    {
        _root.region_index = 3;
        _parent._parent.region.text = item3.text;
        _parent._parent.tween_handlerMove.yoyo ();
    };
    fade4.knap.onPress = function ()
    {
        _root.region_index = 4;
        _parent._parent.region.text = item4.text;
        _parent._parent.tween_handlerMove.yoyo ();
    };
    etc.
Avatar billede thulstrup Nybegynder
27. april 2005 - 11:25 #1
Prøv med:

var i, mc;
for (i=0; i<5; i++) {
    mc = this["fade"+i].knap;
    mc.num = i;
    mc.onPress = function() {
        _root.region_index = this.num;
        _parent._parent.region.text = ["item"+this.num].text;
        _parent._parent.tween_handlerMove.yoyo();
    };
}
Avatar billede barklund Nybegynder
27. april 2005 - 11:52 #2
Så er alle onPress jo den samme thulstrup? Hvorfor lave fem ens funktioner, når man kan lave en og bruge den fem gange. Og derudover kan man ikke bare skrive  ["item"+this.num].text - det vil ikke virke:

var i, mc, base = this;;
for (i = 0; i < 5; i++) {
    mc = this["fade" + i].knap;
    mc.num = i;
    mc.onPress = minOnPress;
}
function minOnPress() {
    _root.region_index = this.num;
    _parent._parent.region.text = base["item" + this.num].text;
    _parent._parent.tween_handlerMove.yoyo();
}

Er da lidt smartere ;)

--
Morten Barklund
Avatar billede thulstrup Nybegynder
27. april 2005 - 12:03 #3
Ok ok, du vinder Barklund :o)
Avatar billede kalleballe Nybegynder
27. april 2005 - 13:08 #4
hm, - den kommer aldrig ind i minOnPress() såvidt jeg kan se..
Avatar billede kalleballe Nybegynder
27. april 2005 - 13:12 #5
mc er bare undefined
Avatar billede barklund Nybegynder
27. april 2005 - 13:12 #6
Smid nogle traces ind - som man jo altid debugger:

var i, mc, base = this;;
for (i = 0; i < 5; i++) {
    mc = this["fade" + i].knap;
    trace("sætter funktion "+i+" på "+mc);
    mc.num = i;
    mc.onPress = minOnPress;
}
function minOnPress() {
    trace("klikket på "+this);
    _root.region_index = this.num;
    _parent._parent.region.text = base["item" + this.num].text;
    _parent._parent.tween_handlerMove.yoyo();
}
Avatar billede barklund Nybegynder
27. april 2005 - 13:13 #7
Hvor ligger scriptet? Og hvor ligger dine knapper?
Avatar billede kalleballe Nybegynder
27. april 2005 - 13:21 #8
scriptet ligger i et mc der ligger på _root level, - selve scriptet ligger altså ikke på root.
Avatar billede kalleballe Nybegynder
27. april 2005 - 13:22 #9
mit 'this' er = _level0.menu
Avatar billede kalleballe Nybegynder
27. april 2005 - 13:23 #10
og selve skriptet ligger inde i:
with (menu_mc.menu_holder)
{
script
}
Avatar billede kalleballe Nybegynder
27. april 2005 - 13:27 #11
with (menu_mc.menu_holder)
{
    /*
                    fade0.knap.onPress = function ()
                    {
                        _root.region_index = 1;
                        _parent._parent.region.text = item0.text;
                        _root.knap_mc._visible = true;
                        _parent._parent.tween_handlerMove.yoyo ();
                    };
                    fade1.knap.onPress = function ()
                    {
                        _root.region_index =2;
                        _parent._parent.region.text = item1.text;
                        _root.knap_mc._visible = true;
                        _parent._parent.tween_handlerMove.yoyo ();
                    };
                    fade2.knap.onPress = function ()
                    {
                        _root.region_index = 3;
                        _parent._parent.region.text = item2.text;
                        _root.knap_mc._visible = true;
                        _parent._parent.tween_handlerMove.yoyo ();
                    };
                    fade3.knap.onPress = function ()
                    {
                        _root.region_index = 4;
                        _parent._parent.region.text = item3.text;
                        _root.knap_mc._visible = true;
                        _parent._parent.tween_handlerMove.yoyo ();
                    };
                    fade4.knap.onPress = function ()
                    {
                        _root.region_index = 5;
                        _root.knap_mc._visible = true;
                        _parent._parent.region.text = item4.text;
                        _parent._parent.tween_handlerMove.yoyo ();
                    };
                    fade5.knap.onPress = function ()
                    {
                        _root.region_index = 6;
                        _root.knap_mc._visible = true;
                        _parent._parent.region.text = item5.text;
                        _parent._parent.tween_handlerMove.yoyo ();
                    };
                    fade6.knap.onPress = function ()
                    {
                        _root.region_index = 7;
                        _root.knap_mc._visible = true;
                        _parent._parent.region.text = item6.text;
                        _parent._parent.tween_handlerMove.yoyo ();
                    };
                    fade7.knap.onPress = function ()
                    {
                        _root.region_index = 8;
                        _root.knap_mc._visible = true;
                        _parent._parent.region.text = item7.text;
                        _parent._parent.tween_handlerMove.yoyo ();
                    };
                    fade8.knap.onPress = function ()
                    {
                        _root.region_index = 9;
                        _root.knap_mc._visible = true;
                        _parent._parent.region.text = item8.text;
                        _parent._parent.tween_handlerMove.yoyo ();
                    };
                    fade9.knap.onPress = function ()
                    {
                        _root.region_index =10;
                        _root.knap_mc._visible = true;
                        _parent._parent.region.text = item9.text;
                        _parent._parent.tween_handlerMove.yoyo ();
                    };
                   
                    */
    var i, mc, base = this;
    for (i = 0; i < 10; i++)
    {
        mc = this["fade" + i].knap;
        trace ("sætter funktion " + i + " på " + mc);
        mc.num = i;
        mc.onPress = minOnPress;
    }
    function minOnPress ()
    {
        trace ("klikket på " + this);
        _root.region_index = this.num;
        _parent._parent.region.text = base["item" + this.num].text;
        _parent._parent.tween_handlerMove.yoyo ();
    }
}
Avatar billede barklund Nybegynder
27. april 2005 - 13:44 #12
Det havde vi jo ikke en chance for at gætte. Og det ændrer jo alt, for nu aner vi ikke, hvad du har hentet hvorfra. Så vil _parent._parent jo give movieclippet selv? Og hvor ligger item0..4 tekstfelterne henne?
Avatar billede kalleballe Nybegynder
27. april 2005 - 13:51 #13
ok du har helt ret, - men tænk ikke mere på det, - det var mere syntaksen jeg var ude efter, - så altså mange tak for hjælpen :)
Avatar billede barklund Nybegynder
27. april 2005 - 13:53 #14
Og drop den with() - den forvirrer meget mere end den gavner. Også for dig selv, når du kigger på det om en måned og tænker "æhh?"
Avatar billede kalleballe Nybegynder
27. april 2005 - 14:43 #15
ja, - WITH tingen var jo da jeg havde alle de enkelte knapper, - nu giver det ingen mening :)
Avatar billede barklund Nybegynder
27. april 2005 - 15:42 #16
Finfin - tark for points :)
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