Avatar billede loudrup Nybegynder
09. marts 2004 - 20:53 Der er 10 kommentarer og
1 løsning

navigationspanel i Flash MX

Jeg har et spørgsmål angående farveskift på mine links. Hvordan kan det være at når jeg har defineret de forskellige tilstande på min "botton" hvorfor bliver farven som jeg har valgt for "down" ikke ved med at være på linket. Selve farven på mit link er sort, men når brugeren så fører musen hen over linket skifter det farve til orange. Men når så man har trykket på linket forbliver det ikke i den orange farve, men skifter tilbage til sort. Jeg ønsker at give brugeren mulighed for at se hvor han befinder sig ved at det valgte link bliver ved med at være orange.Hvordan gør jeg det?
Avatar billede barklund Nybegynder
09. marts 2004 - 21:02 #1
Sagen er jo enkel. Knappen har tre states. Almindelig, mouseover og trykket ned. Det foregår ikke automatisk udover dette.

Hvis du vil lave det, så den har en 4 state, som er Active, så må du lave det manuelt.

Jeg vil foreslå at du lave et movieclip med 4 frames. Så kan du på movieclippet kode det til at gå til mouseover frame ved rollover og tilbage ved rollout samt til downstate ved press og til active state ved release. Ligeledes skal du huske at sende den gamle knap der var trykket ned før tilbage til almindelig state.

Alt i alt på dit movieclip:

on (rollOver) {
    this.gotoAndStop("over");
}
on (rollOut, dragOut, releaseOutside) {
    if (this.selected) {
        this.gotoAndStop("active");
    } else {
        this.gotoAndStop("normal");
    }
}
on (press) {
    this.gotoAndStop("down");
}
on (release) {
    this.selected = true;
    this.gotoAndStop("active");
    prev_selected.selected = false;
    prev_selected.gotoAndStop("normal");
    _global.prev_selected = this;
}

Dette kan du putte på alle dine "knapper" der istedet skal være movieclips... De skal så have 4 framelabels: "normal", "over", "down" og "active"

// Morten Barklund :)
Avatar billede pyroman Nybegynder
09. marts 2004 - 21:03 #2
Det du har lavet er ikke et tekst-link - det er et button symbol... Disse bruges til at lave knapper med, knapper ligesom "start"-knappen i windows fx...

Hvis du vil have en knap der forbliver "nede" skal du smide dit knap-symbol i første frame i et MovieClip symbol - i andet frame laver du noget grafik som knappens "down" stadie...
I første frame på det movieclip skal der desuden være en stop(); action.
På knappen skal der stå følgende script:

on(release){
  gotoAndStop(2);
  //gør noget andet også...
}

Hvis du vil have desiderede tekst-links skal du lave en tekstboks istedet - men linksne vil stadig ikke være farvede efter at man har klikket poå dem...
Avatar billede pyroman Nybegynder
09. marts 2004 - 21:05 #3
lortedag... :(
Avatar billede barklund Nybegynder
09. marts 2004 - 21:07 #4
Tihi ;)
Avatar billede loudrup Nybegynder
09. marts 2004 - 21:52 #5
Barklund, nu har jeg prøvet din løsning, men det virker stadig ikke. I mit library har jeg lavet min botton om til et movieclip. Det har jeg så åbnet og der var allerede lavet 4 frames i min timeline. Jeg har tildelt hver af disse frames en del af den kode som du har sendt mig.

Denne kode på den første frame:

on (rollOver) {
    this.gotoAndStop("over");
}

Denne kode på 2 frame:

on (rollOut, dragOut, releaseOutside) {
    if (this.selected) {
        this.gotoAndStop("active");
    } else {
        this.gotoAndStop("normal");
    }
}
Denne kode på  3 frame:

on (press) {
    this.gotoAndStop("down");
}
Denne kode på 4 frame:


on (release) {
    this.selected = true;
    this.gotoAndStop("active");
    prev_selected.selected = false;
    prev_selected.gotoAndStop("normal");
    _global.prev_selected = this;
}
Men det virker bare ikke. Hvad gør jeg forkert?
Avatar billede barklund Nybegynder
09. marts 2004 - 22:02 #6
Du skal IKKE lægge kode i dens frames - der står der ikke noget om :)

Du skal lægge koden PÅ movieclippet - som du normalt ville gøre på en knap.

Derimod skal du navngive dine frames med en framelabel. Dette gør du i dit properties panel for din frame...
Avatar billede loudrup Nybegynder
10. marts 2004 - 08:40 #7
Nu har jeg fået lagt koden på movieclippet, og jeg har fået navngivet mine frames i property vinduet, men der er stadig noget galt. Når jeg prøver at afspille movien så står linket bare og blinker mellem de 2 farver som jeg har givet den. Jeg har så prøvet at indsætte en stop action på mine frames men det virker heller ikke helt. Første gang jeg klikker så skifter den rigtigt nok farve, men hvis jeg trykker igen så går den tilbage til den oprindelige farve.
Avatar billede barklund Nybegynder
10. marts 2004 - 15:39 #8
Det er rigtigt med en stop() i første frame. Prøv dette:

on (rollOver) {
    this.gotoAndStop("over");
}
on (rollOut, dragOut, releaseOutside) {
    if (this.selected) {
        this.gotoAndStop("active");
    } else {
        this.gotoAndStop("normal");
    }
}
on (press) {
    this.gotoAndStop("down");
}
on (release) {
    prev_selected.selected = false;
    prev_selected.gotoAndStop("normal");
    _global.prev_selected = this;
    this.selected = true;
    this.gotoAndStop("active");
}
Avatar billede loudrup Nybegynder
10. marts 2004 - 16:03 #9
Det var dejligt. Nu virker det. Mange tak for hjælpen. Send mig et svar og jeg giver dig dine point :)
Avatar billede barklund Nybegynder
10. marts 2004 - 16:15 #10
Jo tak :)
Avatar billede barklund Nybegynder
11. april 2004 - 12:09 #11
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