Text verschwindet Problem

nick2005

Mitglied
Hi, nochmals muss ich um Hilfe bitten, denn weiß nicht woran es liegen könnte, dass ein nachgeladener Text in einem mc plötzlich verschwindet.

Also ich habe einen hauptfilm. dort lade ich per meinText.load ... einen Text ein, der in einen MC liegt. Dann lasse ich den MC per AS an einer anderen Stelle hüpfen, wo er dann entgültig stehen soll. Funktioniert auch soweit gut. Dieser MC liegt auf einen eigenen Layer und ist immer da.
Der Haupt - Film läuft ab und bleibt an einer bestimmten Stelle stehen. Den Text kann ich wunderbar scrollen. Alles funtzt bis hierhin. Nun steuere ich mittels eines Knopfes die Zeitleiste im Hauptfilm und springe irgenwo hin, damit eine Animation abgespeilt wird. Das passiert auch wunderbar. Doch will ich jetzt den Text scrollen, verschwindet dieser :( Wie kann ich das verhindern? Bzw. was muss ich tun damit das nicht passiert?

Zweite Frage wo ich schonmal dabei bin:

In meinen Hauptfilm habe ich einen Preloader (sorry habe aber nichts passendes in der Suche darüber gefunden), dieser soll einen externen swf movie nachladen. Klappt auch, doch in diesem befinden sich jpg bzw. Texte die wieder extern nachgeladen werden. Jetzt wollte ich das so, dass der Hauptfilm Preloader, solange wartet und die prozentenanzeige anzeigt bis alles auch die externen Inhalte des externen swf movies geladen sind.Leider klappt das nicht so ganz. Ich habe mir das so vorgestellt:

IN den externen Movie kommt auf ersten Frame:
PHP:
meinText = new LoadVars();
meinText.onLoad = function() {
textfeld.htmlText = meinText.news;
};
meinText.load("text.txt");


this.onEnterFrame = function(){
	geladent = meinText.getBytesLoaded();
	zuladent = meinText.getBytesTotal();
	_root.bytestextf = geladent;
	_root.bytestext = zuladent;
	if ( geladent >= zuladent){ 
		delete this.onEnterFrame;
		}
}

im Hauptfilm der die swf lädt kommt im ersten Frame wo der Preloader ist das:

PHP:
var beytestext= 0;
var bytestextf = 0;
right_mc.loadMovie("neu.swf");
	   this.onEnterFrame = function(){
	   geladen = _root.getBytesLoaded()+ right_mc.getBytesLoaded()+ bytesttextf
	   zuladen = _root.getBytesTotal()+ right_mc.getBytesTotal() + bytestext;
		prozent = Math.round(geladen/zuladen*100);
		
		if (prozent >= 98){
		_root.erstezahl = "0";
		_root.zweitezahl = "0";
		_root.drittezahl = "0";
		_root.viertezahl = "0";
		delete this.onEnterFrame;
		gotoAndPlay(5);
		
		} else{
			nachkomma = random(9);
			neuprozent = 100 - prozent;
			_root.erstezahl = int( neuprozent / 10);
			_root.zweitezahl = neuprozent % 10;
			_root.drittezahl = nachkomma;
		    _root.viertezahl = nachkomma;
		}
	   }
		stop();
Leider bleibt da der Loader nach irgenwieviel prozent stehen, genau da wo er anfängt den Text zu streamen und versagt somit. Dann dachte ich mir, ich lösche das laden in den externen swf, und greife im Hauptfilm dirket auf den text damit er geladen wird, dann funktioniert das, allerdings komsicher Weise bei einer isdn, dsl, aber schnellerer Verbindung wird der text einfach nicht geladen. hm dachte ich mir.
Somit meine Frage ist dies denn überhaupt möglich, dass man in einen Hauptfilm den Status auch von externen nachgeladenen swf und darin extern nachgeladenen Texten , jpg abfragen kann und praktisch nur im hauptfilm einen Preloader hat der alle KBs zusammen betrachtet? Wenn ja hat jemand ein kleines Beispiel?
Sonst muss ich das so lösen wie jetzt. Dass ich alles in einen Hauptfilm habe, wenn ich was nachladen will und das nur in MC und nicht in externen swfs. Wäre das mit den Texten, dass die verschinden beim scrollen nicht da, wäre es schon akzeptable.

Danke schonmal im Vorraus.

Bis dann!
 
Hi

Bitte poste mal die Fla zum Textproblem... durch den wirren Text blickt ja keiner durch ... :-)

Liebe Grüße,
Jens

/edit: sorry für spam aber <--- da steht ne 1000 :-) :-) :-)
 
Hi hier die .fla. Habe die auf das Problem soweit gekürzt. Es geht nur um den Text der verschwindet. Einfach auf Aboutme klicken und dann versuchen zu scrollen und schon ist er weg. Er soll aber bleiben. Ich will aber trotzdem die möglichkeit haben im Hauptfilm auf irgendwelchen Frame zu springen.

Bis dann
 

Anhänge

Hi,

Tipp: Zu Beginn des Ladevorgangs sind (abhängig von der Verbindung) getBytesTotal() und getBytesLoaded() gerne mal -1 . Dadurch wird der Prozentwert natürlich größer als 98 und Dein Ladevorgang bricht ab.

Ich mache das immer so:
PHP:
this.onEnterFrame = function() {
    var cur = ziel.getBytesLoaded();
    var max = ziel.getBytesTotal();
    if (cur > 10 && max > 10) {
        var prozent = cur * 100 / max;
        // Hier ggf. Werte anzeigen
        if (prozent >= 100) delete this.onEnterFrame;
    }
}

Gruß
.
 
Datic danke für den Tipp was Preloaden angeht. Habe es vorher nicht gewusst. Langsam kommt mir flash schlimmer als C vor, wo nichts wirklich definiert ist, Scherzartikel eingebaut worden sind, die keiner braucht usw. wie unser prof immer so gerne sagt. Naja manchmal hat er recht.
 
Hm keiner ne Idee warum der Text verschwindet? und wie man das beheben könnte?
Ich weiß nämlich nicht wie ich das sonst machen könnte. Immer wieder den Text neuzuladen beim klicken eines Knöpfes, wäre ne Möglichkeit, aber wozu wenn er schon da ist.
 
Hi,

das ist ein Bezeichnerkonflikt: Sowohl der MovieClip, der das Textfeld enthält, als auch die Textfeldvariable heissen bei Dir "news". Die Textfeldvariable brauchst Du garnicht, da Du ja sowieso auf die htmlText-Eigenschaft des Textfeldes zugreifst - lösch sie also raus und es sollte funktionieren.

Gruß
.
 
Hey Datic danke dir, du bist mein Retter in der Not. Mir ist das gar nicht aufgefallen, und ich habe gerübelt gegrübelt und kam nicht drauf. Danke!!
 
Zurück