06. oktober 2003 - 14:04
Der er
54 kommentarer og 1 løsning
Ny variabel i dyn.text felt via button
Jeg har et dynamisk tekst felt hvor jeg i "var" feltet definerer følgende værdi : _root.wss0.number1 Nu vil jeg så skifte værdien ud på feltet hver gang jeg trykker på en knap , dvs at trykkes der på knappen får det dynamiske tekstfelt værdien _root.wss0.number2 og næste gang _root.wss0.number3 osv. Hvordan gøres det ? Der er f.eks 18 steps og når max nås skal det hente nr 1 igen ... Hjælp
Annonceindlæg fra QNAP
_k
Nybegynder
06. oktober 2003 - 14:10
#1
er number1, number2, number3 osv. variabelnavne? Og indeholder de noget, eller er du også igang med at sætte det? Hvis det er dynamisk genererede variabelnavne, skal du skrive noget i retning af: eval(_root.wss0.number" + aktuelleNummer); Hvis ovenstående er helt hen i vejret, så prøv at beskrive dit problem mere konkret....
06. oktober 2003 - 14:16
#2
Jeg henter noget xml ind i flash hvorefter jeg definerer hver variabel : number1 = getNodeByName(stepnumber, 'number1').firstChild.nodeValue; number2 = getNodeByName(stepnumber, 'number2').firstChild.nodeValue; og det er så dem jeg godt vil skifte imellem
06. oktober 2003 - 14:19
#3
on (release) { i++; if (i > 18) { i = 1; } _root.wss0.felt = _root["number" + i]; } /per
06. oktober 2003 - 14:19
#4
du kan bare bruge text propertien til textfeltet: textFeltNavn_txt.text = number1; eller: textFeltNavn_txt.text = number2;
06. oktober 2003 - 14:20
#5
nå, havde ikke lige set det med de 18 steps... : )
06. oktober 2003 - 14:28
#6
hoejrup - jeg kan ikke få det til at virke ... mit tekstfelt har følgende værdier: instance name = number var: = _root.wss0.number1 Jeg har prøvet at smidde din kode ind på min knap med det virker ikke. Det skal lige siges at jeg ikke på forhånd ved hvor mange steps der er ..
06. oktober 2003 - 14:37
#7
Følgende virker : on (release) { _root.wss0.number1 = _root.wss0.number2; } Men det virker selvsagt kun en gang Hvordan laves en tæller der kan automatisk ligger en til og når værdin i feltet er tomt eller null så går den til 1 igen ...
06. oktober 2003 - 14:48
#8
Hvis det du skriver der virker, så burde det her også virke!? on (release) { i++; if (i > 18) { i = 1; } _root.wss0.number1 = _root.wss0["number" + i]; }
06. oktober 2003 - 14:54
#9
det gør det også men det er også en lille bitte smule anderleds end det per hoejrup skrev. Så mangler jeg bare at den skal hoppe til 1 igen hvis værdien er tom !
06. oktober 2003 - 14:56
#10
Det skulle det her stykke kode gerne sørge for, har du tjekket at den ikke gør det? i++; if (i > 18) { i = 1;
06. oktober 2003 - 14:58
#11
hov, min fejl: on (release) { i++; if (i > 18 || i="") { i = 1; } _root.wss0.number1 = _root.wss0["number" + i]; }
06. oktober 2003 - 15:01
#12
det virkede ikke: **Error** Scene=Scene 1, layer=Layer 23, frame=1:Line 3: Left side of assignment operator must be variable or property. if (i > 18 || i="") { Total ActionScript Errors: 1 Reported Errors: 1
06. oktober 2003 - 15:03
#13
on (release) { i++; if (i > 18 || i=="") { i = 1; } _root.wss0.number1 = _root.wss0["number" + i]; }
06. oktober 2003 - 15:06
#14
når man når til 18 og trykke på knappen - sker der ikke noget og trykker man så igen hopper den til 2 ?
06. oktober 2003 - 15:10
#15
Det gør den ikke hos, der går den fra 18 til 1
06. oktober 2003 - 15:13
#16
kan det have noget at gøre med at jeg fra start har defineret text feltet til at henter data var "number1" ?
06. oktober 2003 - 15:16
#17
åh jo: on (release) { i++; //trace(i) if (i > 17 || i=="") { i = 0; } } og så du starte med at definere var "number0"
06. oktober 2003 - 15:20
#18
ok.. jeg er ret forvirret idag.. Jeg tror at den kode du skal bruge er følgende: on (release) { i++; if (i > 18 || i=="") { i = 1; } trace(i) }
06. oktober 2003 - 15:21
#19
Du kan så state med at sætte i til 0, fx i keyframen: i=0
06. oktober 2003 - 15:34
#20
Jeg kan se at den tæller op nu i output vinduet men der sker intet på skærmen jeg har brugt en var der hedder v og har kun 4 steps men det skulle ikke ændre noget. on (release) { v++; if (v > 4 || v=="") { v = 1; } trace(v) _root.wss0.number0 = _root.wss0["number" + v]; }
06. oktober 2003 - 15:38
#21
ahh - det er sikkert fordi det er variabel number0 og den har jeg ikke defineret , jeg starter med at definerer var number1 Jeg prøver lige at lave det om .....
06. oktober 2003 - 15:47
#22
ellers, hvis du har mulighed for det, så læg filen ud eller mail den til mig, så kigger jeg på det..?
06. oktober 2003 - 15:48
#23
nu har jeg ændret min xml til at starte med number 0 derved får jeg et blankt felt når den når til 4 - eller 18 i dit eks. Men fra 0 - 4 er der jo også 5 enheder så ændre jeg det til v til max at være 3 tæller den fin op , men springer ellers 1 over !!! Jeg har sat v=0 på frame 1 on (release) { v++; if (v > 4 || v=="") { v = 1; } trace(v) _root.wss0.number0 = _root.wss0["number" + v]; }
06. oktober 2003 - 15:51
#24
if (v > 4 || v=="") { v = 0; } prøv det!
06. oktober 2003 - 15:52
#25
- jeg har også en knap hvor den skal tælle ned ... Hjælper du mig helt i land så begge knapper virker - smider jeg 40 point oven i !! ellers får du selvfølig de 120 for tak for hjælpen.
06. oktober 2003 - 15:53
#26
on (release) { v++; if (v > 4 || v=="") { v = 0; } trace(v) _root.wss0.number0 = _root.wss0["number" + v]; } /per
06. oktober 2003 - 15:53
#27
Hvis den skal tælle ned: v--; /per
06. oktober 2003 - 15:54
#28
on (release) { v--; if (v <= 0 || v=="") { v = 18; } trace(v) _root.wss0.number0 = _root.wss0["number" + v]; } /per
06. oktober 2003 - 15:57
#29
Ja - jeg er helt sikkert enig med hoejrup.. ;)
06. oktober 2003 - 16:02
#30
Når man når til 4 og trykker på knappen igen bliver den bare stående , men i output vinduet tæller den godt nok ned til 0 ? Jeg har også rette i mit xml doc til at starte med number 0 og jeg har også rettet der hvor jeg henter min xml ind til at starte med 0 : number0 = getNodeByName(stepnumber, 'number0').firstChild.nodeValue; Så hvad kan der være galt ??? - der er også problemer med 1 når man tæller baglæns , der hopper den fra 2 til 4 .... on (release) { v--; if (v <= 0 || v=="") { v = 4; } trace(v) _root.wss0.number0 = _root.wss0["number" + v]; }
06. oktober 2003 - 16:03
#31
jeg har også prøvet at rette v=4; til v=3;
06. oktober 2003 - 16:05
#32
når man tæller baglæns viser output vinduet 3 , 2 , 1 , 3 osv. derved når den aldrig til 0 igen !
06. oktober 2003 - 16:08
#33
Det har gør at du kan komme helt ned på nul.. on (release) { v--; if (v < 0 || v=="") { v = 4; } }
06. oktober 2003 - 16:10
#34
prøv at trace "v" og _root.wss0.number0 og se om de stemmer overens.
06. oktober 2003 - 16:12
#35
Det lyder mystisk, for det virker udemærket i mit program. Det er helt sikkert, fordi din 'load af data' funktion ikke er bygger korrekt op. /per
06. oktober 2003 - 16:14
#36
Hvis den skal blive 0, så skulle det virke nu. /per
06. oktober 2003 - 16:18
#37
I kan se mine filer på
www.widex.com/lba-test der ligge følgende :wss_8.fla og global.asi , de ligger der de næste 4 min !
06. oktober 2003 - 16:20
#38
jeg arbejder med 2004 - hvad har i ?
06. oktober 2003 - 16:21
#39
fla filen er nu gemt som mx !
06. oktober 2003 - 16:25
#40
så er tiden gået og jeg sletter filerne ...
06. oktober 2003 - 16:28
#41
Min load funktion kommer ikke med nogen fejl , så hvad det skulle være ved jeg ikke :
System.useCodepage = true;
xmldata = new XML();
xmldata.ignoreWhite = true;
xmldata.onLoad = function(success) {
xmldata.ignoreWhite = true;
if (success) {
var i, max = 30, top = this.childNodes;
for (i = 0; i < max; i++) {
_root["wss"+i].init(top[i]);
}
}
}
xmldata.load("
http://sti/wss_1.xml" );
06. oktober 2003 - 16:32
#42
06. oktober 2003 - 16:35
#43
jeg sletter dem når du siger "til". Jeg mener problemet er, at når v bliver "0", så sætter var variablen _root.wss0.number0 til sig selv.. den går jo ikke! Så jeg har ændret variablens navn til var0 - du kan bare lave den om hvis du vil.. kan du bruge det?
06. oktober 2003 - 16:36
#44
det virker fint , bortset fra at den starter med ingenting og herefter 3 ?
06. oktober 2003 - 16:37
#45
Til !
06. oktober 2003 - 16:51
#47
Kanon - ligger du lige et svar !!! øh - tør man spørge - hvad så med tilbage ?
06. oktober 2003 - 16:52
#48
virker tilbage ikke?? den tæller da 4,3,2,1,4??
06. oktober 2003 - 16:52
#49
UNDSKYLD - den var der - tusinde tak for hjælpen ....
06. oktober 2003 - 16:53
#50
np! jeg har slettet filerne igen ;)
06. oktober 2003 - 16:55
#51
Er det ok at jeg bruger dine filer til lidt privat studie.. jeg er nemmelig helt ny i behandling af XML!? Ellers sletter jeg bare filerne igen sæfølig!
06. oktober 2003 - 16:55
#52
den virkede - ligger gulekings lige et svar ! TAK !
06. oktober 2003 - 16:55
#53
Jepper
06. oktober 2003 - 16:56
#54
øhh - lige hurtigt nok - jeg opretter lige et spørgsmål med tillægs point
06. oktober 2003 - 16:56
#55
swØØt
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.