Avatar billede kalleballe Nybegynder
05. august 2003 - 10:18 Der er 11 kommentarer og
1 løsning

lave gammel onClipEvent(enterFrame) om til mitMC.onClipEvent = fx

Jeg har følgende kode på et movieclip der ligger i et andet mc, -
altså _root.lens.bigpic

onClipEvent (enterFrame) {
   
        if (_root.retning == 1) {
            _x = 640-_parent._x;
            _y = (_root.pageHi/2)-(_parent._y-(512-_root.pageHi));
        }
}

problemet er at det hele fucker op hvis jeg gør følgende:

_root.lens.bigpic.onClipEvent = function() {

if (_root.retning == 1) {
            _x = 640-_parent._x;
            _y = (_root.pageHi/2)-(_parent._y-(512-_root.pageHi));
        }

}

Hvorfor mon... og hvordan får jeg det til at virke?

vh

KalleBalle
Avatar billede barklund Nybegynder
05. august 2003 - 10:26 #1
I MX hedder de scriptede events:

_root.lens.bigpic.onEnterFrame = function() {
    if (_root.retning == 1) {
        _x = 640-_parent._x;
        _y = (_root.pageHi/2)-(_parent._y-(512-_root.pageHi));
    }

}
Avatar billede kalleballe Nybegynder
05. august 2003 - 10:28 #2
jeg skrev forkert.... selv om der står onEnterFrame giver det ikke samme resultat af en eller anden grund...

Kan det have noget med _parent at gøre??
Avatar billede kalleballe Nybegynder
05. august 2003 - 10:35 #3
kan man slå en onClipEvent(enterFrame) fra lige som med mc.onEnterFrame = null?
Avatar billede barklund Nybegynder
05. august 2003 - 10:43 #4
Hvis du laver en onClipEvent() så kan du bare fjerne din onEnterFrame, da det jo er samme funktion.

Og ja, det har noget med parent at gøre. Funktioner i Flash 6 eksekveres i det scope, hvor de blev oprettet. Det er svært at forstå, men giver lidt mening:

_root.lens.bigpic.onEnterFrame = function() {
    if (_root.retning == 1) {
        this._x = 640-this_parent._x;
        this_y = (_root.pageHi/2)-(this_parent._y-(512-_root.pageHi));
    }

}
Avatar billede barklund Nybegynder
05. august 2003 - 10:43 #5
hov:

_root.lens.bigpic.onEnterFrame = function() {
    if (_root.retning == 1) {
        this._x = 640-this._parent._x;
        this._y = (_root.pageHi/2)-(this._parent._y-(512-_root.pageHi));
    }
}
Avatar billede kalleballe Nybegynder
05. august 2003 - 10:48 #6
Tak, tak, tak skal du ha'

Lad mig give dig points!
Avatar billede barklund Nybegynder
05. august 2003 - 10:56 #7
K
Avatar billede barklund Nybegynder
05. august 2003 - 11:04 #8
Tarkst
Avatar billede kalleballe Nybegynder
05. august 2003 - 11:43 #9
Maestro, - kan du ikke lige sige mig hvorfor dette ikke virker?

_root.lens.bigpic2.bigpic2Func = function() {
    if (_root.retning == 1) {
        this._x = (640-_root.pageWi)-this._parent._x;
        this._y = (_root.pageHi/2)-(this._parent._y-(512-_root.pageHi));
    } else {
        this._x = (_root.pageWi)-this._parent._x+80;
        this._y = (_root.pageHi/2)-(this._parent._y-(512-_root.pageHi));
    }
};
_root.lens.bigpic2.onEnterFrame = _root.lens.bigpic2.bigpic2Func();
Avatar billede barklund Nybegynder
05. august 2003 - 12:01 #10
Din enterframe skal vel ikke være resultatet af en funktion - det skal være funktionen selv:

_root.lens.bigpic2.onEnterFrame = _root.lens.bigpic2.bigpic2Func;
Avatar billede kalleballe Nybegynder
05. august 2003 - 12:08 #11
nå ja, - mange tak for hjælpen :-)
Avatar billede barklund Nybegynder
05. august 2003 - 13:00 #12
Det var så lidt ;)
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