Avatar billede a-zartie Nybegynder
20. juni 2003 - 09:43 Der er 5 kommentarer og
1 løsning

"scroll" på billede virker ikke ved loadMovie

Jeg har et script liggende (tak til barklund) der får et billede til at scrolle, når man kører musen ud mod kanten.
Det fungerer også fint hvis jeg har billeder liggende direkte i flash filen. Så ville jeg gerne have billedet til at ligge i en extern flash fil, for at kunne lave noget preload på de enkelte billeder, og så virker scrollen ikke mere. Loader fint billedet, og jeg kan kommunikere til filmen, men ikke flytte den.
Scriptet ligger i et lag for sig selv, og movieclippet i et lag for sig selv.


####  scriptet ####

loadMovie("film.swf",movieContainer);

border = 50;

this.onEnterFrame = function() {
   
    _root.movieContainer.stop();
   
    }
   
    if (_xmouse < border || _xmouse > Stage.width-border) {
        movieContainer.end_x += (Stage.width/2-_xmouse)/10;
        movieContainer.end_x = Math.min(movieContainer._width/2,movieContainer.end_x);
        movieContainer.end_x = Math.max(Stage.width-movieContainer._width/2,movieContainer.end_x);
    }
    if (_ymouse < border || _ymouse > Stage.height-border) {
        movieContainer.end_y += (Stage.height/2-_ymouse)/10;
        movieContainer.end_y = Math.min(movieContainer._height/2,movieContainer.end_y);
        movieContainer.end_y = Math.max(Stage.height-movieContainer._height/2,movieContainer.end_y);
    }   
}

movieContainer.onEnterFrame = function() {
    if (this._x != this.end_x) {
        this._x += (this.end_x-this._x)/5;
    }
    if (this._y != this.end_y) {
        this._y += (this.end_y-this._y)/5;
    }   
}
Avatar billede mat Nybegynder
20. juni 2003 - 20:37 #1
er det en snas taget ud af en sammenhæng? for hvis det ser sådan der ud lukker onEnterFrame efter du har bedt movieContainer om at stoppe, og du burde få en fejl på den anden if?
Avatar billede mat Nybegynder
20. juni 2003 - 20:38 #2
"lukker du onEnterFrame funktionen efter..." - skulle der have stået :)
Avatar billede a-zartie Nybegynder
20. juni 2003 - 21:28 #3
Nej, det er en fejl...
Der er klippet lidt. Der ligger noget kommunikation til movieklippet, og der har jeg fået klippet forkert ud....  funktionen slutter naturligvis først helt nede  :-)
Avatar billede barklund Nybegynder
24. juni 2003 - 10:14 #4
Hvordan ser det fulde, rigtige script så ud?
Avatar billede a-zartie Nybegynder
24. juni 2003 - 12:20 #5
loadMovie("film.swf",movieContainer);

border = 50;

this.onEnterFrame = function() {
   
    _root.movieContainer.stop();
   
    if (Key.isDown(Key.UP)) {
        _root.movieContainer.gotoAndStop(_root.movieContainer._currentframe +1);
    }
   
    if (Key.isDown(Key.DOWN)) {
        _root.movieContainer.gotoAndStop(_root.movieContainer._currentframe -1);
    }
   
    if (_xmouse < border || _xmouse > Stage.width-border) {
        movieContainer.end_x += (Stage.width/2-_xmouse)/10;
        movieContainer.end_x = Math.min(movieContainer._width/2,movieContainer.end_x);
        movieContainer.end_x = Math.max(Stage.width-movieContainer._width/2,movieContainer.end_x);
    }
    if (_ymouse < border || _ymouse > Stage.height-border) {
        movieContainer.end_y += (Stage.height/2-_ymouse)/10;
        movieContainer.end_y = Math.min(movieContainer._height/2,movieContainer.end_y);
        movieContainer.end_y = Math.max(Stage.height-movieContainer._height/2,movieContainer.end_y);
    }   
}

movieContainer.onEnterFrame = function() {
    if (this._x != this.end_x) {
        this._x += (this.end_x-this._x)/5;
    }
    if (this._y != this.end_y) {
        this._y += (this.end_y-this._y)/5;
    }   
}
Avatar billede a-zartie Nybegynder
06. august 2003 - 13:17 #6
-
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