Avatar billede inkognito1 Nybegynder
14. januar 2002 - 22:00 Der er 49 kommentarer og
1 løsning

Asp - Lys avis i flash !

Jeg har en database der opdateres jænvligt med rulle tekst nyheder. Det svinger meget om der er 1, 2 eller måske 5 nyehder i den.

Jeg har lavet en load af en ASP fil ind i flash. Det fungere fint med denne løsning.

Jeg har oprettet et tekst felt og sat dette i timeline: loadVariablesNum (\"teksten.asp\", 0);

I teksten.asp står der.
_root.tekst=Vi har stadig gang i gaden kig ind

Jeg skal så have den til efter 5 sek at skifte til tekst nr 2.

En der kan hjælpe mig videre ??
Avatar billede lingoman Nybegynder
14. januar 2002 - 22:53 #1
lav din asp tekst så den ikke behøver at have et fast antal nyheder.

_root.news=Vi har stadig gang i gaden kig ind;Seneste meldinger...;Nyhed 3;Nyhed 4

Så kan Flash indlæse hele strengen med alle nyhederne og sortere dem

lav dit dynamiske tekstfelt som skal vise nyhederne til et movieClip som starter i en senere frame så vi kan være sikker på at alle nyhederne er indlæst før onClipEvent(load) udføres

onClipEvent(load) {
newsArray=_root.news.split(\";\");  //sorter nyhederne

//vis første nyhed

newsNum=0;

if (newsNum < newsArray.length) {

tekst = newsArray[newsNum];  //hent første nyhed
displayMin = 5*1000;              // vis alle nyheder i 5 sekunder
startTime = getTimer();            //reset stopur

}
}

onClipEvent(enterFrame) {

  displayTime = getTimer() - startTime;

  if (displayTime > displayMin) {
      //tiden er gået så hent næste nyhed fra Array
      newsNum++;

      if (newsNum >= newsArray.length) {
              //der er ikke flere nyheder i listen, så start forfra
              newsNum = 0;
      }

      tekst = newsArray[newsNum];  //hent næste nyhed og vis i det dynamiske tekstfelt

      startTime = getTimer();            //reset stopur
  }
}

mvh geo


Avatar billede lingoman Nybegynder
14. januar 2002 - 23:05 #2
det var et svar :)
Avatar billede inkognito1 Nybegynder
14. januar 2002 - 23:10 #3
Symbol=Symbol 2, Layer=Layer 1, Frame=1: Line 1: Clip events are permitted only for movie clip instances
    onClipEvent(load) {

Symbol=Symbol 2, Layer=Layer 1, Frame=1: Line 17: Clip events are permitted only for movie clip instances
    onClipEvent(enterFrame) {
Avatar billede inkognito1 Nybegynder
14. januar 2002 - 23:11 #4
Øhh .. laver jeg et movieclip forkert ?
Avatar billede lingoman Nybegynder
14. januar 2002 - 23:13 #5
Du har i alle fald ikke sat actionen på et movieClip i følge output vinduet.. ;)
Avatar billede inkognito1 Nybegynder
14. januar 2002 - 23:36 #6
hmm kan du hjælpe mig .. med det her .. den komemr med fejl uanset hvad jeg gør ..
Avatar billede lingoman Nybegynder
14. januar 2002 - 23:38 #7
Ok, zip din fla og send den indenfor 15 min. til geo@lingoman.dk
Avatar billede lingoman Nybegynder
14. januar 2002 - 23:47 #8
Jeg kan også sende dig en demo fil hvis du smider en mail til mig
Avatar billede inkognito1 Nybegynder
14. januar 2002 - 23:48 #9
har sendt fil men min mail er ... soren@hvemellers.dk

du vælger selv løsning :O)
Avatar billede lingoman Nybegynder
15. januar 2002 - 00:26 #10
you\'ve got mail...

Hej inkognito1,

Her er din nyhederFla.

Den indlæser alle nyhederne i frame 1 via actionen

loadVariables(\"nyheder.txt\",\"_root\");

Dette kan naturligvis erstattes med din asp fil i stedet.
Du må bare huske at de individuelle nyhedspunkter skal adskilles med \";\" så Flash kan finde ud af hvor strengen
skal splittes ad. Dette udelukker også brugen af \";\" midt i din nyhedstekst.

mvh geo
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 02:12 #11
Tak for det .. det virker jo perfekt .. men hvordan redigere jeg i det du har lavet .. jeg kan godt se scriptet med ikke editere. Jeg ville sætte det op til 8 sek istedet.

Hvordan kommer jeg lige afsted med det ..
Avatar billede lingoman Nybegynder
15. januar 2002 - 02:36 #12
rediger linien hvor der står

displayMin = 5*1000;

til

displayMin = 8*1000;

mvh geo
Avatar billede lingoman Nybegynder
15. januar 2002 - 02:38 #13
klik på tekstfeltets mc på stage, så kan du redigere actionen på movieclippet
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 12:39 #14
ok .. det er jo mig der fjoller rundt ... en sidste lille ting ville det være muligt at få teksten til at fade væk, altså sådan den forsvinder langsomt.
Avatar billede barklund Nybegynder
15. januar 2002 - 15:11 #15
Det er et stort, det sidste der... Men man kan godt!

Hvornår skal det ske? De sidste 2 sekunder af de 8 sekunder?

Så skal der i stedet stå (det er lidt på fornemmeren- måske er det forkert):

onClipEvent(load) {
    newsArray=_root.news.split(\";\");
    newsNum=0;
    displayMin = 6*1000;
    fadeMin = 2*1000;
    if (newsNum < newsArray.length) {
        tekst = newsArray[newsNum];
        startTime = getTimer();
    }
}

onClipEvent(enterFrame) {
    displayTime = getTimer() - startTime;
    if (displayTime > displayMin) {
        _alpha = (displayTime-displayMin)/fadeMin * 100;
    } else if {displayTime > displayMin+fadeMin) {
        _alpha = 100;
        newsNum++;
        if (newsNum >= newsArray.length) {
            newsNum = 0;
        }
        tekst = newsArray[newsNum];
        startTime = getTimer();
    }
}

Det var forresten ikke så besværligt...

Prøv det engang...

/barklund
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 15:56 #16
Scene=Scene 1, Layer=nyhederClip, Frame=13: Line 16: \'(\' expected
        } else if {displayTime > displayMin+fadeMin) {
Avatar billede lingoman Nybegynder
15. januar 2002 - 15:59 #17
onClipEvent(load) {
                          newsArray=_root.news.split(\";\");
                          newsNum=0;
                          displayMin = 6*1000;
                          fadeMin = 2*1000;
                          if (newsNum < newsArray.length) {
                              tekst = newsArray[newsNum];
                              startTime = getTimer();
                          }
                      }

                      onClipEvent(enterFrame) {
                          displayTime = getTimer() - startTime;
                          if (displayTime > displayMin) {
                              _alpha = (displayTime-displayMin)/fadeMin * 100;
                          } else if {(displayTime > displayMin+fadeMin) {
                              _alpha = 100;
                              newsNum++;
                              if (newsNum >= newsArray.length) {
                                  newsNum = 0;
                              }
                              tekst = newsArray[newsNum];
                              startTime = getTimer();
                          }
                      }
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 16:02 #18
Lingeman: der komer denne fejl.

cene=Scene 1, Layer=nyhederClip, Frame=13: Line 16: \'(\' expected
                              } else if {(displayTime > displayMin+fadeMin) {

Scene=Scene 1, Layer=nyhederClip, Frame=13: Line 17: Statement must appear within onClipEvent handler
                                  _alpha = 100;

Scene=Scene 1, Layer=nyhederClip, Frame=13: Line 18: Statement must appear within onClipEvent handler
                                  newsNum++;

Scene=Scene 1, Layer=nyhederClip, Frame=13: Line 19: Statement must appear within onClipEvent handler
                                  if (newsNum >= newsArray.length) {

Scene=Scene 1, Layer=nyhederClip, Frame=13: Line 22: Statement must appear within onClipEvent handler
                                  tekst = newsArray[newsNum];

Scene=Scene 1, Layer=nyhederClip, Frame=13: Line 23: Statement must appear within onClipEvent handler
                                  startTime = getTimer();

Scene=Scene 1, Layer=nyhederClip, Frame=13: Line 24: Unexpected \'}\' encountered
                              }

Avatar billede lingoman Nybegynder
15. januar 2002 - 16:07 #19
vi prøver igen..

onClipEvent(load) {
                          newsArray=_root.news.split(\";\");
                          newsNum=0;
                          displayMin = 6*1000;
                          fadeMin = 2*1000;
                          if (newsNum < newsArray.length) {
                              tekst = newsArray[newsNum];
                              startTime = getTimer();
                          }
                      }

                      onClipEvent(enterFrame) {
                          displayTime = getTimer() - startTime;
                          if (displayTime > displayMin) {
                              _alpha = (displayTime-displayMin)/fadeMin * 100;
                          } else if (displayTime > displayMin+fadeMin) {
                              _alpha = 100;
                              newsNum++;
                              if (newsNum >= newsArray.length) {
                                  newsNum = 0;
                              }
                              tekst = newsArray[newsNum];
                              startTime = getTimer();
                          }
                      }
Avatar billede barklund Nybegynder
15. januar 2002 - 16:09 #20
Hovsa.. det kan ske... lingomans sidste ser korrekt ud...
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 16:12 #21
nu kommer der ingen fejl men den fortsætter ikke til tekst nr. og den fader heller ikke ..
Avatar billede barklund Nybegynder
15. januar 2002 - 16:17 #22
Kan du uploade swf\'en med html (ellers kan min linux ikke finde ud af det) så jeg kan se det...

prøv at erstatte første linie med \"_alpha = ...\" til

_alpha = 50;

Så skulle den bare fade ned til halv gennemsigtighed...

/barklund
Avatar billede barklund Nybegynder
15. januar 2002 - 16:19 #23
...argh... selvfølgelig... glem det ovenstående og skriv i stedet:

</images/transparent.gif>    vi prøver igen..

onClipEvent(load) {
                          newsArray=_root.news.split(\";\");
                          newsNum=0;
                          displayMin = 6*1000;
                          fadeMin = 2*1000;
                          if (newsNum < newsArray.length) {
                              tekst = newsArray[newsNum];
                              startTime = getTimer();
                          }
                      }

                      onClipEvent(enterFrame) {
                          displayTime = getTimer() - startTime;
                          if (displayTime > displayMin && displayTime < displayMin+fadeMin) { // her er ændringen
                              _alpha = (displayTime-displayMin)/fadeMin * 100;
                          } else if (displayTime > displayMin+fadeMin) {
                              _alpha = 100;
                              newsNum++;
                              if (newsNum >= newsArray.length) {
                                  newsNum = 0;
                              }
                              tekst = newsArray[newsNum];
                              startTime = getTimer();
                          }
                      }
Avatar billede barklund Nybegynder
15. januar 2002 - 16:20 #24
...og glem lige den der linie med \"</images...\" Hvor kom den fra? :o(
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 16:23 #25
nu skifter den men fader ikke ...
Avatar billede barklund Nybegynder
15. januar 2002 - 16:33 #26
okay... så prøv at sætte _alpha = 50 som før og se hvad der så sker...
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 16:34 #27
der sker ikke noget har prøvet ..
Avatar billede lingoman Nybegynder
15. januar 2002 - 16:47 #28
Denne er testet og virker :)

onClipEvent (load) {
    newsArray = _root.news.split(\";\");
    newsNum = 0;
    displayMin = 6*1000;
    fadeMin = 2*1000;
    if (newsNum<newsArray.length) {
        tekst = newsArray[newsNum];
        startTime = getTimer();
    }
}
onClipEvent (enterFrame) {
    displayTime = getTimer()-startTime;
    if (displayTime>displayMin && displayTime<displayMin+fadeMin) {
        // her er ændringen
        _alpha = (1-(displayTime-displayMin)/fadeMin)*100;

    } else if (displayTime>displayMin+fadeMin) {
        _alpha = 100;

        newsNum++;
        if (newsNum>=newsArray.length) {
            newsNum = 0;
        }
        tekst = newsArray[newsNum];
        startTime = getTimer();
    }
}


Husk at aktivere \'embed font\' for dit tekstfelt

mvh geo

Hvis det stadig driller dig sender jeg en demo
Avatar billede barklund Nybegynder
15. januar 2002 - 16:49 #29
ja selvfølgelig skal det være \"1-...\" men derudover mangler du sikkert på dit tekstfelt at sige \"include font outline\" - kan det passe? Ellers kan man ikke sætte _alpha...

/barklund
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 18:01 #30
Mange tak .. er der en speciel komando for linie skift i txt filen ???
Avatar billede lingoman Nybegynder
15. januar 2002 - 18:03 #31
Det er det 3. tillægsspørgsmål du beder om at få besvaret ud over dit oprindelige....
newline
Avatar billede barklund Nybegynder
15. januar 2002 - 18:08 #32
Virker det så?
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 20:00 #33
pont ændret til 100 ... er det nok til et svar på det ??
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 20:02 #34
Lingoman det ville jo være ret besærligt for mig at forklare det i et nyt spørgsmål .. sgu ikke fordi jeg ikke gider oprette et nyt :O)
Avatar billede barklund Nybegynder
15. januar 2002 - 20:10 #35
...du har fået svaret af lingoman... svaret er \"newline\"
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 20:15 #36
øhhh
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 20:15 #37
ok - trode det var newline = nyt spøgsmål ... hehe
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 20:16 #38
tak for hjælpen ...
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 20:26 #39
Nå .. det er åbenbart ikke lige til ..

Hvordan skal min tekst fil se ud.
saådan ser min tekst fil du:

news=Peter Hansen er ikke særlig klog;Ursula petersen er klog

Hvordan laver jeg et linieskift med \"newline\"

news=Peter Hansen \"newline\" er ikke særlig klog;Ursula petersen \"newline\" er klog

Avatar billede barklund Nybegynder
15. januar 2002 - 20:28 #40
ikke \"newline med newline...

prøv med:

news=Peter Hansen+newline+er ikke særlig klog;Ursula petersen+newline+er klog

Virker det?

Ellers:

news=Peter Hansen+\\n+er ikke særlig klog;Ursula petersen+\\n+er klog

Nu er spørgsmålet godt nok lukket uden point til mig, men jeg hjælper da gerne alligevel... :o)

/Barklund
Avatar billede barklund Nybegynder
15. januar 2002 - 20:29 #41
møgtastatur - eller noget... første linie skulle have lydt:

ikke \"newline\" men newline...
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 20:39 #42
det funker ikke :O(
Avatar billede barklund Nybegynder
15. januar 2002 - 20:41 #43
...så kan du lave dit tekstfelt om til et HTML-tekstfelt (slå html til) og så skrive:

news=Peter Hansen<BR>er ikke særlig klog;Ursula petersen<BR>er klog

Disse skal nok helst urlencodes, men det kan ASP\'en vel nemt gøre for dig...

/Barklund
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 20:43 #44
Jo det har jeg lejet lidt med men der kan man ikke centere ordenligt ... eller er der en mulighed <center> virker ikke
Avatar billede barklund Nybegynder
15. januar 2002 - 20:51 #45
Skal det være centreret? Så skal vi scripte udenom...

Modificeret kode, der tolker \"newline\" som linieskift:

onClipEvent (load) {
    newsArray = _root.news.split(\";\");
    newsNum = 0;
    displayMin = 6*1000;
    fadeMin = 2*1000;
    displayText = function(text) {
        for (var i = 0; i < text.length; i++) {
            if (text.substr(i,7) eq \"newline\") {
        text = text.substr(0,i) add \"\\n\" add text.substr(i+7, text.length-i);
            i+=2;
        }
            return text;
    }
    if (newsNum<newsArray.length) {
    tekst = displayText(newsArray[newsNum]);
    startTime = getTimer();
    }
}
onClipEvent (enterFrame) {
    displayTime = getTimer()-startTime;
    if (displayTime>displayMin && displayTime<displayMin+fadeMin) {
        // her er ændringen
        _alpha = (1-(displayTime-displayMin)/fadeMin)*100;

    } else if (displayTime>displayMin+fadeMin) {
        _alpha = 100;

        newsNum++;
        if (newsNum>=newsArray.length) {
            newsNum = 0;
        }
        tekst = displayText(newsArray[newsNum]);
        startTime = getTimer();
    }
}

Tror nok det virker... prøv engang... din tekst skal så blot være:

news=Peter Hansen newline er ikke særlig klog;Ursula petersen newline er klog

/Barklund
Avatar billede barklund Nybegynder
15. januar 2002 - 20:52 #46
nej.. det er lidt forkert... ret til:

text = text.substr(0,i) add \"\\n\" add text.substr(i+7);

Gider den?
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 20:53 #47
denne error:

Scene=Scene 1, Layer=nyhederClip, Frame=6: Line 19: onClipEvent handlers may not nest within other onClipEvent handlers
    onClipEvent (enterFrame) {

Scene=Scene 1, Layer=nyhederClip, Frame=6: Line 1: Statement block must be terminated by \'}\'
    onClipEvent (load) {

Scene=Scene 1, Layer=nyhederClip, Frame=6: Line 34: Syntax error.
    }
Avatar billede barklund Nybegynder
15. januar 2002 - 20:57 #48
der mangler bare en }... fx efter i+=2; også \"Convert to Normal Mode\" så det bliver pænt......
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 21:06 #49
Lækkert .. så var den der ... mangler så lige en aller sidste ting før den helt 100 :O)

Hvordan sætter jeg det før newline fed skrift måske understreget ... opretter lige et spørgsmål sådan du kan få point ...
Avatar billede inkognito1 Nybegynder
15. januar 2002 - 21:07 #50
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

IT-JOB

Scan Global Logistics

PMO Project Manager

RackPeople

Teknisk Lead

Capgemini Danmark A/S

AI Data Architect

Politiets Efterretningstjeneste

Netværksspecialist til IT i PET