Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 16-11-2003, 22:55   #1 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 59
String in Zahl ?

Hallo, habe das Forum schon durchsucht und nicht die passende Lösung gefunden. Hier mein Problem:

(Zeilennummern nur zu Orientierung)
-----------------------------------------------
1: // initialize variables and properties
2: square._alpha = 0;
3: whichPic = 1;
4: loadVariablesNum("pic/config.txt", 0);
5: // initiate change to new image when buttons are clicked
6: next.onPress = function() {
7: if (whichPic<anzahl && !fadeIn && !fadeOut) {
8: fadeOut = true;
9: whichpic++;
10: input = whichPic;
11: }
12: };
13: back.onPress = function() {
14: if (whichPic>1 && !fadeIn && !fadeOut) {
15: fadeOut = true;
16: whichpic--;
17: input = whichPic;
18: }
19: };
20: _root.onEnterFrame = function() {
21: // when a new Photo is selected, fade out, load new 22: image, and fade in
23: if (square._alpha>10 && fadeOut) {
24: square._alpha -= 10;
25: }
26: if (square._alpha<10) {
27: loadMovie ("pic/image"+whichPic+".jpg", "square");
28: unloadMovie ("text-dummy");
29: loadVariablesNum("pic/image"+whichPic+".txt", 0);
30: fadeOut = false;
31: fadeIn = true;
32: }
33: if (square._alpha<100 && fadeIn && !fadeOut) {
34: square._alpha += 10;
35: } else {
36: fadeIn = false;
37: }
38: // limit input field
39: if (input>anzahl) {
40: input = anzahl;
41: }
42: // initiate change to new image when Enter key is pressed
43: if (Key.isDown(Key.ENTER)) {
44: fadeOut = true;
45: whichpic = input;
46: }
47:};
48: // if a number is entered in the input field but Enter is not pressed, change
49: // back to current Photo number when clicking anywhere else
inputField.onKillFocus = function() {
50: input = whichPic;
51: };
----------------------------------------------------

Ich lese aus einer Datei (config.txt) die Variable anzahl=3 aus und möchte gerne damit arbeiten, nur leider habe ich in Zeile 7 ein Problem damit. Sobald ich in Zeile 7 eine 3 anstatt die Variable anzahl benutze funzt alles. In Zeile 39 und 40 habe ich das Problem nicht, da kann ich mit der Variable rechnen.

Bitte nicht mit der Idee kommen ich soll es mit Number(Wert) versuchen oder mit Number(Math.round(Wert)) - das funzt hier alles nicht! Hat jemand eine Idee??
Luigihausen ist offline   Mit Zitat antworten
Alt 16-11-2003, 23:36   #2 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.324
das ist wohl ein zeitproblem. "anzahl" ist noch garnicht fertig mit laden, da benutzt du es schon.
verschiebe den loadVariablesNum befehl 1-2 frames vor.
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 17-11-2003, 09:12   #3 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 59
Funzt immer noch nicht!

Ich habe es mal versucht, nur leider ohne Erfolg! Vielleicht kann sich ja mir mal einer annehmen. Hier mal die komplette Datei, sollte jemand eine Idee haben >> viel Glück!

Galerie mit Problem

Danke!
Luigihausen ist offline   Mit Zitat antworten
Alt 17-11-2003, 09:50   #4 (permalink)
Foxi Knuddelbär
 
Registriert seit: Oct 2001
Ort: nahe Hamburg
Beiträge: 4.798
Bezieht sich !fadeIn und !fadeOut auf "whichPic"?

fadeIn und fadeOut sind nicht initialisiert!?

Zitat:
7: if (whichPic<anzahl && !fadeIn && !fadeOut) {
Ich bin mir nicht sicher, ob Du numerische und boolesche Werte zusammen in einer if-Abfrage benutzen kannst. False und true ergeben ja nicht automatisch einen numerischen Wert (auch wenn 0 und 1 dahintersteht).

Ansonsten, wenn mehrere Werte in einer if-Abfrage, dann besser so schreiben:

7: if ((whichPic<anzahl) && (whichPic !=fadeIn) && (whichPic !=fadeOut)) {....

In Zeile 39/40 hast Du deswegen keine Probleme, weil hier nur ein numerischer Wert abgefragt wird.
Brigitte ist offline   Mit Zitat antworten
Alt 17-11-2003, 15:18   #5 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 59
nein, das war es auch nicht!!

das war leider auch nicht der Trick!
Luigihausen ist offline   Mit Zitat antworten
Alt 17-11-2003, 15:48   #6 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.324
es ist ein zeitproblem!
und es hat nichts mit den anderen variablen zu tun.


zieh dir bitte mal den anhang und lass es laufen. dann verschieb die beiden programmstücke näher zusammen.

eventuell reichen 2 frame abstand nicht aus. dann verschiebe sie weiter auseinander. bis die 3 durch trace ausgegeben wird.

wenn das später im internet laufen soll, dann solltest du unbedingt eine schleife einbauen und testen, ob anzahl=="" ist.


----------
siehe auch beitrag (z.Z. 4 zeilen tiefer)
"Variablen aus Textdatei"
Variablen aus Textdatei
Angehängte Dateien
Dateityp: zip test.zip (3,9 KB, 3x aufgerufen)
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de

Geändert von hgseib (17-11-2003 um 15:56 Uhr)
hgseib ist offline   Mit Zitat antworten
Alt 17-11-2003, 17:00   #7 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 59
das kann nicht das Problem sein!

...so das habe ich auch versucht, mit trace wird die Zahl ausgegeben, aber es bleibt das gleiche Ergebnis. Es muß doch eine Lösung geben, oder? :-(
Luigihausen ist offline   Mit Zitat antworten
Alt 17-11-2003, 17:57   #8 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.324
du hast geschrieben:
".. Sobald ich in Zeile 7 eine 3 anstatt die Variable anzahl benutze funzt alles.."

durch den trace-test wissen wir, die variable ist da und du bist dir 1000% sicher, die 3 ist eine zahl - dann muss es gehen!!! oder es gibt hier noch irgendetwas, das du uns verheimlichst.

mach doch bitte mal sowas ähnliches wie Brigitte geschrieben hat, aber schön langsam - schrittweise
Code:
if (whichPic<anzahl) {
  trace("bin bei 1");
	if (whichPic !=fadeIn) {
  	trace("bin bei 2");
		if (whichPic !=fadeOut) {
			trace("geht doch");
}	}	}
wo befindet sich dein fehler wirklich?
wenn nicht, schmeiss weg den müll ;-)
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 17-11-2003, 19:38   #9 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 59
die 3 wird ausgegeben!

Den test von hgseib versuche ich noch, die Scriptänderung von Brigitte habe ich versucht, funzt auch nicht. Ob die 3 eine Zahl ist, da bin ich mir nicht 100% sicher, aber mit dem Befehl Number(anzahl) tut es ja auch nicht. Habe mal gelesen das mit einer eingelesenen Varible Probleme beim addieren gibt!? Das Problem tritt ja nur auf, wenn ich ein Bild weiterschalten will (also addieren), beim herunterschalten funzt es! Ich muß natürlich vor dem herunterschalten erst 3 eingeben und mit Enter bestätigen.

Die Idee mit Script in den Müll finde ich nicht so gut :-)

Vielleicht hat ja jetzt jemand eine Idee, oder gibt es noch eine andere Möglichkeit eine Zahl aus einer externen Datei einzulesen?

Geändert von Luigihausen (17-11-2003 um 20:11 Uhr)
Luigihausen ist offline   Mit Zitat antworten
Alt 18-11-2003, 00:06   #10 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.324
jetzt muss ich doch nonchmal nachhaken.

wie denn, wo denn, wann denn addieren? addier'st du irgendwann etwas zu anzahl dazu? das steht aber nirgens in dem veröffentlichen script drinn und ist auch das erste mal, das du das erwähnst :-(

vielleicht liegt ja da der hund begraben. fall's es so währe, z.B.
_root.anzahl++;
könnte probleme machen, da würde ich
_root.anzahl= _root.anzahl+1;
vorziehen.
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 18-11-2003, 08:58   #11 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 59
so war das nicht gemeint...

ich addiere nicht direkt zu anzahl hinzu, sondern nur so wie es im Script steht. Es ist hat nur beim addieren bzw. beim weiterschalten der Bilder und nicht bei zurückschalten!
Luigihausen ist offline   Mit Zitat antworten
Alt 20-12-2003, 16:24   #12 (permalink)
kon
Neuer User
 
Registriert seit: Oct 2003
Beiträge: 1
ich habe das gleiche problem !

Ich will mit ner var arbeiten, sie wird geladen aus einer Textdatei !
&anzahl=3
aber in flash kann ich sie ausgeben aber nicht damit rechnen ! Woran liegt das ?
kon ist offline   Mit Zitat antworten
Alt 20-12-2003, 18:01   #13 (permalink)
Foxi Knuddelbär
 
Registriert seit: Oct 2001
Ort: nahe Hamburg
Beiträge: 4.798
Weil das vermutlich als String übergeben wird.

Zum Rechnen Number davorsetzen:

Number(variable)......
Brigitte ist offline   Mit Zitat antworten
Alt 21-12-2003, 09:10   #14 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 59
wie schon oben in einem Beitrag geschrieben, tut das mit Number(abc) auch nicht! Hat hier noch jemand eine Idee?
Luigihausen ist offline   Mit Zitat antworten
Alt 21-12-2003, 11:12   #15 (permalink)
Foxi Knuddelbär
 
Registriert seit: Oct 2001
Ort: nahe Hamburg
Beiträge: 4.798
Ich habe ein ganz kleines, einfaches Beispiel gemacht.

Eine Zahl wird aus einer externen txt-Datei geladen. In einem Eingabefeld kann man selber eine Zahl eingeben.

Über den Button wird das Ergebnis berechnet.

Wenn Du die Aktion auf dem Button

Number(text)+Number(ein)

veränderst und Number wegnimmst, kannst du sehen, dass der Rechenvorgang nicht mehr funktioniert.
Brigitte ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 08:45 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele