Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 19-07-2004, 09:25   #1 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Ort: nähe ma
Beiträge: 25
dynamische navigation aus textdatei verlinken

liebe community,

ich habe folgendes problem, bei dem ich einfach nicht weiter komme.
ich habe eine navigation die aus einer textdatei die anzahl der navigationspunkte und deren bezeichnung ausliest. das funktioniert auch. jetzt soll zu dieser funktion noch dazukommen, dass die einzelnen elemente per klick einen neuen movieclip erstellen und die gleiche variable, die für den navigationspunkt genommen wurde auch in das folgende as einbinden:

Code:
this.createEmptyMovieClip("contentinclude",2); 
contentinclude._x = 357; 
contentinclude._y = 60; 
contentinclude.loadMovie("content_includer.swf?content=VARIABLE&teaser=VARIABLE&files=VARIABLE"); 
contentinclude.play();
der quellcode der funktion lautet:

Code:
MovieClip.prototype.einlesen = function() {
	vars = new LoadVars();
	vars.load("nav.txt");
	vars.onLoad = function(fertig) {
		if (fertig) {
			nav = new Array();
			for (i=1; i<=vars.anzahl; i++) {
				nav[i-1] = this["nav"+i];
				_root.attachMovie("home_movie", "home_movie"+i, i, {_x:30, _y:30*i});
				_root["home_movie"+i].textint.text = nav[i-1];
			}
		}
	};
};
this.einlesen();
die textdatei sieht so aus:

Code:
&anzahl=8&
&nav1=home&
&nav2=unternehmen&
&nav3=it.services&
&nav4=new.media&
&nav5=portfolio&
&nav6=webhosting&
&nav7=kontakt&
&nav8=impressum&
ich hoffe ihr könnt mir helfen, ich komme leider überhaupt nicht weiter und bin mit meinem latein am ende.

mfg dios
__________________
the most important thing in life is to be free
dios ist offline   Mit Zitat antworten
Alt 19-07-2004, 09:43   #2 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
zwar kein sauberes script, aber so sollte es gehen:
ActionScript:
  1. MovieClip.prototype.einlesen = function() {
  2.     vars = new LoadVars();
  3.     vars.load("nav.txt");
  4.     vars.onLoad = function(fertig) {
  5.         if (fertig) {
  6.             nav = new Array();
  7.             for (i=1; i<=vars.anzahl; i++) {
  8.                 nav[i-1] = this["nav"+i];
  9.                 _root.attachMovie("home_movie", "home_movie"+i, i, {_x:30, _y:30*i});
  10.                 _root["home_movie"+i].textint.text = nav[i-1];
  11.                 //ab hier neu:
  12.                 _root["home_movie"+i].onRelease = function() {
  13.                     this.createEmptyMovieClip("contentinclude", 10);//Tiefe "2" auf Tiefe "10" geändert, 2 ist schon belegt
  14.                     contentinclude._x = 357;
  15.                     contentinclude._y = 60;
  16.                     contentinclude.loadMovie("content_includer.swf?content="+this.textint.text+"&teaser="+this.textint.text+"&files="+this.textint.text);
  17.                     contentinclude.play();
  18.                 };
  19.             }
  20.         }
  21.     };
  22. };

Gruß

Alois
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-
Alois ist offline   Mit Zitat antworten
Alt 19-07-2004, 09:51   #3 (permalink)
Flashaholic
 
Benutzerbild von atothek
 
Registriert seit: Feb 2003
Ort: Berlin
Beiträge: 1.459
@alois na so geht das aber nicht tsts
also was schonmal gar nicht geht ist das du die MovieClip klasse damit erweitersrt das macht gar keinen sinn. anstatt dessen solltest du die <LoadVars klasse erweitern ist doch logisch, oder???

also wie folgt.
PHP-Code:
LoadVars.prototype.einlesen = function(pFile) {
    
this.load(pFile);
    
this.onLoad = function(fertig) {
        if (
fertig) {
            
this.nav = new Array();
            for (var 
i=1i<=vars.anzahli++) {
                
this.nav.push(this["nav"+i]);
                
_root.attachMovie("home_movie""home_movie"+ii, {_x:30_y:30*i});
                
_root["home_movie"+i].textint.text this.nav[i-1];
// und den rest wie alois das macht
            
}
        }
    };
};
vars = new LoadVars(); 
vars.einlesen("nav.txt"); 
__________________
TVNEXT Solutions

Geändert von atothek (19-07-2004 um 09:53 Uhr)
atothek ist offline   Mit Zitat antworten
Alt 19-07-2004, 10:06   #4 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
ok athothek, das mit der MovieClip-Klasse hab ich einfach übersehen, den code hab ich einfach so von dios kopiert..., aber wenn wir schon mal drehen sind ich würde auch nicht immer wieder einen neuen mc erstellen:
ActionScript:
  1. var ziel=this.createEmptyMovieClip("contentinclude", 10);//Tiefe "2" auf Tiefe "10" geändert, 2 ist schon belegt
  2.                     ziel._x = 357;
  3.                     ziel._y = 60;
  4. LoadVars.prototype.einlesen = function(pFile) {
  5.     this.load(pFile);
  6.     this.onLoad = function(fertig) {
  7.         if (fertig) {
  8.             this.nav = new Array();
  9.             for (var i=1; i<=vars.anzahl; i++) {
  10.                 this.nav.push(this["nav"+i]);
  11.                 var ziel=_root.attachMovie("home_movie", "home_movie"+i, i, {_x:30, _y:30*i});
  12.                 ziel.textint.text = this.nav[i-1];
  13. //...
  14. ziel.onRelease = function() {
  15.                                        contentinclude.loadMovie("content_includer.swf?content="+this.textint.text+"&teaser="+this.textint.text+"&files="+this.textint.text);
  16.                    //ach das iss ja auch sinnlos .... contentinclude.play();
  17.                 };
  18.             }
  19.         }
  20.     };
  21. };
  22. vars = new LoadVars();
  23. vars.einlesen("nav.txt");
...wollen wir noch weitermachen..?
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-

Geändert von Alois (19-07-2004 um 10:08 Uhr)
Alois ist offline   Mit Zitat antworten
Alt 19-07-2004, 10:50   #5 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Ort: nähe ma
Beiträge: 25
hey danke alois & atothek,

super es funktioniert. das einzigste problem, das ich jetzt ist, dass die einzelnen navigationspunkte aus movieclips bestehen (home_movie) und in diesem befindet sich wiederum eine schaltfläche mit einer mouse-over anination und einem sound diese elemente werden jetzt einfach übergangen.

das weitere problem ist das jetzt in meinem hauptfilm, in dem ich die navi.swf per container lade der erste button (home) nicht vorhanden ist, alle anderen dagegen schon. wisst ihr rat?

mfg dios
__________________
the most important thing in life is to be free
dios ist offline   Mit Zitat antworten
Alt 19-07-2004, 11:16   #6 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
zu 1:
dann musst Du die Buttonaction halt auf Deine Schaltflächenistanz setzen
ActionScript:
  1. ...
  2. //bei parallelen sound ist onPress auch besser als onRelease
  3. ziel.schaltflaecheninstanzname.onPress = function() {
  4. ...
zu 2:
das liegt wohl nicht am script, wahrscheinlich ist erstellst Du allerdings nach dem Laden noch einen mc per createEmptyMovieClip oder attachMovie auf der Tiefe1 somit wird der Button home wieder gelöscht.

Gruß

Alois
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-
Alois ist offline   Mit Zitat antworten
Alt 19-07-2004, 12:38   #7 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Ort: nähe ma
Beiträge: 25
Zitat:
Zitat von Alois
zu 1:
dann musst Du die Buttonaction halt auf Deine Schaltflächenistanz setzen
ActionScript:
  1. ...
  2. //bei parallelen sound ist onPress auch besser als onRelease
  3. ziel.schaltflaecheninstanzname.onPress = function() {
  4. ...

das problem ist das bei "darüber" ein sound (in der zeitleiste der schaltläche) und ein weiterer movieclip mit einer animation sind. und ich absolut keine ahnnung hab wie ich die auf die schaltflächeninstanz bekomme.

Zitat:
Zitat von Alois
zu 2:
das liegt wohl nicht am script, wahrscheinlich ist erstellst Du allerdings nach dem Laden noch einen mc per createEmptyMovieClip oder attachMovie auf der Tiefe1 somit wird der Button home wieder gelöscht.
darauf habe ich extra geachtet, die tiefe sind nicht doppelt vergeben. also kann es daran nicht liegen.
__________________
the most important thing in life is to be free
dios ist offline   Mit Zitat antworten
Alt 19-07-2004, 13:25   #8 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
Zitat:
Zitat von dios
das problem ist das bei "darüber" ein sound (in der zeitleiste der schaltläche) und ein weiterer movieclip mit einer animation sind. ...
...na und....
Zitat:
Zitat von dios
...darauf habe ich extra geachtet, die tiefe sind nicht doppelt vergeben. also kann es daran nicht liegen.
...das wag ich jetzt mal zu bezweifeln, schliesslich lag da ja auch schon im ersten posting eine Doppelbelegung vor, am besten Du postest mal eine fla
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-
Alois ist offline   Mit Zitat antworten
Alt 19-07-2004, 14:53   #9 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Ort: nähe ma
Beiträge: 25
hier mal die .fla der navigation, die dann mit dem mc-container eingebunden wird in den hauptfilm.
Angehängte Dateien
Dateityp: zip navi.zip (8,5 KB, 15x aufgerufen)
__________________
the most important thing in life is to be free
dios ist offline   Mit Zitat antworten
Alt 20-07-2004, 09:41   #10 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Ort: nähe ma
Beiträge: 25
hab gestern jetzt noch etwas rumprobiert - aber leider keine lösung gefunden. hast jemand noch ne idee?

mfg dios
__________________
the most important thing in life is to be free
dios ist offline   Mit Zitat antworten
Alt 20-07-2004, 10:04   #11 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
sorry dios, ich konnte Deine file gestern nicht öffnen (habe nur mx und nicht mx04), deshalb kam von mir nix, wenn Du sie nochmal als mx-version hochladen könntest...
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-
Alois ist offline   Mit Zitat antworten
Alt 20-07-2004, 10:20   #12 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Ort: nähe ma
Beiträge: 25
kein problem hier ist die datei im mx format
Angehängte Dateien
Dateityp: zip navi.zip (10,7 KB, 8x aufgerufen)
__________________
the most important thing in life is to be free
dios ist offline   Mit Zitat antworten
Alt 20-07-2004, 12:28   #13 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
Punkt1:

...einfach genau das machen was ich gestern beschrieben habe und feddich...

Punkt2:
'home' ist ja da..., wenn der beim Laden in eine andere swf nicht mehr da ist kann es doch nur daran liegen, möglicherweise liegt es auch nur an der positionierung und der home-button wird überdeckt...
Angehängte Dateien
Dateityp: zip dios_navi.zip (8,2 KB, 15x aufgerufen)
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-
Alois ist offline   Mit Zitat antworten
Alt 20-07-2004, 12:49   #14 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Ort: nähe ma
Beiträge: 25
danke trotzdem glaub ich das ich moment gleich verzweifle ich muss das projekt bis morgen fertig haben und komme nicht weiter. jetzt habe ich das problem das sich der container nicht plazieren lässt in dem die navi drin ist.

schau hier: http://th.dyndns.info/test/main.html

p.s. hier siehst du auch das die loinks plötzlich nicht mehr funktionieren, was sie vorher taten und der button "home" fehlt.
__________________
the most important thing in life is to be free

Geändert von dios (20-07-2004 um 12:51 Uhr)
dios ist offline   Mit Zitat antworten
Alt 20-07-2004, 17:52   #15 (permalink)
Neuer User
 
Registriert seit: Feb 2003
Ort: Koeln
Beiträge: 58
Hallo,
laut Referenz gibt MovieClip.attachMovie nichts zurück. ziel=_root.attachMovie funzt daher nicht 100% ?

Gruß
KH
maxel 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 05:15 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele