Avatar billede mvk Nybegynder
16. marts 2002 - 18:38 Der er 30 kommentarer og
1 løsning

mouse inactive

findes der et eksempel på det - jeg ønsker at afspille en movie rundt om curseren når den ikke har bevæget sig i eks. 10 sekunder ?
tak :o)
Avatar billede lingoman Nybegynder
16. marts 2002 - 22:03 #1
Der findes en MC event mouseMove som kan bruges til formålet.
Sæt følgende action pådet MC som skal afspille når der er gået 10 sek.

onClipEvent(load) {
timeOutLength = 10*1000;
startTimerOut();
function startTimeOut() {
      TimeOutActive = true;
      startTime = getTimer();
}
}
onClipEvent(mouseMove) {
startTimerOut(); //reset timeOut
}

onClipEvent(enterFrame) {

  if ( TimeOutActive ) {
   
    if ( getTimer() - startTime > timeOutLength) {
        this.play();
        TimeOutActive = false;
    }
  }
}

mvh geo
Avatar billede lingoman Nybegynder
16. marts 2002 - 22:05 #2
typo rettelse>>

onClipEvent(mouseMove) {
        startTimeOut(); //reset timeOut
}
Avatar billede mvk Nybegynder
16. marts 2002 - 22:30 #3
kan man få det til at spille ved musen ?
jeg har lavet en animation med nogle pinde der dannes i en cirkel
den ani vil jeg gerne have til at køre rundt omkring pointeren...
Avatar billede lingoman Nybegynder
16. marts 2002 - 22:46 #4
yes! Din animation skal bare køre omkring MC'ets centrum.
rediger den sidste action (kun enterframe delen)

onClipEvent(enterFrame) {

                        if ( TimeOutActive ) {
                         
                          if ( getTimer() - startTime > timeOutLength) {
                              this._x = _root._xmouse;
                              this._y = _root._ymouse;
                              this.play();
                              TimeOutActive = false;
                          }
                        }
                      }
Avatar billede mvk Nybegynder
17. marts 2002 - 00:28 #5
very nice mr lingo
tak og godnat
Avatar billede mvk Nybegynder
17. marts 2002 - 11:47 #6
godmorgen lingo
du kan se eksemplet her: http://fuzzy.homepage.dk
jeg har sat den til 3 sekunder -
men hvordan sletter jeg animationen når brugeren flytter musen
som den er nu bliver den bare stående...
jeg kan ikke lige se det  - min hjerne er på søndagsmode...
Avatar billede lingoman Nybegynder
17. marts 2002 - 11:56 #7
Tænd/sluk for _visible property ved at redigere actionerne i mouseMove og enterframe events.

onClipEvent(mouseMove) {
    startTimerOut(); //reset timeOut
    this._visible = false;
}

onClipEvent(enterFrame) {

      if ( TimeOutActive ) {

          if ( getTimer() - startTime > timeOutLength) {
                this._x = _root._xmouse;
                this._y = _root._ymouse;
                this._visible = true;
                this.play();
                TimeOutActive = false;
          }
        }
}
Avatar billede mvk Nybegynder
17. marts 2002 - 12:01 #8
fedt :o)
man hvordan genstarter man den så...
for når man har bevæget musen 1 gang mens den er igang med
animationen - så er der ikke mulighed for at den kan køre igen
hvis man ikke bevæger musen...
Avatar billede lingoman Nybegynder
17. marts 2002 - 12:04 #9
Det forstår jeg ikke..Har du oploaded den nye version ?
kigger lige på resultatet..
Avatar billede mvk Nybegynder
17. marts 2002 - 12:10 #10
øjeblik - jeg UL lige
Avatar billede mvk Nybegynder
17. marts 2002 - 12:10 #11
den er UL
Avatar billede lingoman Nybegynder
17. marts 2002 - 12:19 #12
det er den typo som harr sniget sig ind igen :(

onClipEvent(mouseMove) {
    startTimeOut(); //reset timeOut
    this._visible = false;
}

onClipEvent(enterFrame) {

    if ( TimeOutActive ) {

            if ( getTimer() - startTime > timeOutLength) {
                  this._x = _root._xmouse;
                  this._y = _root._ymouse;
                  this._visible = true;
                  this.play();
                  TimeOutActive = false;
            }
    }
}

Så skulle den gerne være i orden
Avatar billede mvk Nybegynder
17. marts 2002 - 12:30 #13
den havde jeg fanget .- men det hjælper ikke
jeg har forklaret det dårligt - den skal kunne fange
inactive mouse igen og igen - nu virker det "kun" 1ste gang :o)
Avatar billede lingoman Nybegynder
17. marts 2002 - 12:38 #14
Mystisk..Prøv at indsætte en trace().

onClipEvent(mouseMove) {
    startTimeOut(); //reset timeOut
    this._visible = false;
    trace("_visible = " + this._visible );
}

Får du stadig et output når du flytter musen efter 1.gang den forsvinder?
Avatar billede mvk Nybegynder
17. marts 2002 - 12:43 #15
mærkeligt - det hjælper ikke
jeg får ikke noget output - så vidt jeg kan se...
Avatar billede lingoman Nybegynder
17. marts 2002 - 12:46 #16
Du får vel i det midste et output INDEN din animation går igang for 1. gang.. eller hvad?
Avatar billede lingoman Nybegynder
17. marts 2002 - 12:55 #17
Måske får et movieClip med _visible = false ingen mouseMove event ???

Lad os prøve med _alpha i stedet..

Erstat de 3 linier

this._visible = true;
this._visible = false;
trace("_visible = " + this._visible );

med hhv

this._alpha = 100;
this._alpha = 0;
trace("_alpha = " + this._alpha );

og hvis det heller ikke giver trace() output

"_alpha = 0" på noget tidspunkt må vi flytte MC'et til et område udenfor stage i stedet
Avatar billede mvk Nybegynder
17. marts 2002 - 12:55 #18
jo jo - der får jeg _visible = false
Avatar billede mvk Nybegynder
17. marts 2002 - 12:57 #19
jeg får _visible = false på den første :
this._visible = true;
this._visible = false;
trace("_visible = " + this._visible );
Avatar billede lingoman Nybegynder
17. marts 2002 - 12:58 #20
Kan du Copy/paste MC actionen ind her i sin helhed uden at redigere i det ?

Der må være en typo et eller andet sted.
Avatar billede mvk Nybegynder
17. marts 2002 - 13:01 #21
there u go: [tusinde tak for al din hjælp]
onClipEvent(load) {
    timeOutLength = 10*300; //10*1000
    startTimeOut();
    function startTimeOut() {
    TimeOutActive = true;
    startTime = getTimer();
    }
}
onClipEvent(mouseMove) {
    startTimeOut(); //reset timeOut
    this._alpha = 0;
//    this._visible = false;
    trace("_alpha = " + this._alpha );
//    trace("_visible = " + this._visible );
}
onClipEvent(enterFrame) {

    if ( TimeOutActive ) {

            if ( getTimer() - startTime > timeOutLength) {
                  this._x = _root._xmouse;
                  this._y = _root._ymouse;
                  this._alpha = 100;
//                  this._visible = true;
                  this.play();
                  TimeOutActive = false;
            }
    }
}
Avatar billede lingoman Nybegynder
17. marts 2002 - 13:20 #22
Har netop testet det sidste script på en demo fil og det virker!

mc'en fremkommer så snart timeOutLength er nået. Hvis cursoren i mellemtiden bevæger sig udenfor stage kommer mc'en frem der hvor musen forlod stage.

Der må være noget andet som giver problemet..
Avatar billede mvk Nybegynder
17. marts 2002 - 13:27 #23
æv - så det må være et eller andet imellem mit inactive mc og resten af filmen...
Avatar billede lingoman Nybegynder
17. marts 2002 - 13:30 #24
Prøv lige at sende mig filen og fortæl mig hvad mc instancet hedder.
geo@lingoman.dk
Avatar billede mvk Nybegynder
17. marts 2002 - 13:38 #25
den er på vej :o)
Avatar billede lingoman Nybegynder
17. marts 2002 - 13:48 #26
Jeg har ikke fået din fil endnu..

Det kan være at animationen trækker for mange resourcer selv om den er usynlig..

Prøv en sidste gang med

onClipEvent(mouseMove) {
    startTimeOut(); //reset timeOut
    this._alpha = 0;
    this.gotoAndStop(1);
}
Avatar billede lingoman Nybegynder
17. marts 2002 - 13:56 #27
jeg smutter snart for denne uge så hvis jeg skal hjælpe dig videre nu må du lige sende filen eller afprøve mit sidste foreslag.
Avatar billede mvk Nybegynder
17. marts 2002 - 18:23 #28
mærkeligt - jeg var lige ude :o(
anyway - jeg prøver at sende den igen -
så kan du kigge på den når du får tid :o)
god søndag
Avatar billede lingoman Nybegynder
18. marts 2002 - 08:23 #29
Fandt problemet!

Dine helvedes mange duplicated letters sluger så meget processorkraft at alt andet går i stå!

Løsningen er at gemme alle disse instancer af de flyvende bogstaver i et array og removeMovieClip dem alle så snart vi slukker for inactiveMC (_alpha = 0)

Ellers fungerer vores action godt med

onClipEvent(mouseMove) {
                              startTimeOut(); //reset timeOut
                              this._alpha = 0;
                              this.gotoAndStop(1);
                          }

Dette sørger jo for at duplicateMovieClip ikke bliver udført i frame 2 før vi tænder for MC'en igen.

Jeg skal på arbejde nu men vil gerne hjælpe dig med removeMovieClip koden så snart jeg får tid igen.
Avatar billede mvk Nybegynder
18. marts 2002 - 13:24 #30
fedt lingo :o)
TAK
Avatar billede mvk Nybegynder
18. marts 2002 - 13:27 #31
jeg ville gerne afsætte flere point til dig
men jeg kan ikke finde funktionen efter det nye design -
er jeg blind ?
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