Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 07-11-2005, 17:54   #1 (permalink)
Eternal Newbe
 
Registriert seit: Aug 2002
Ort: Heidelberg
Beiträge: 241
Unhappy Statusanzeige in rechenaufwändigen Prozessen

Ich habe ein Programm welches nur in einem Frame stattfindet und dabei sehr viele Daten via Actionsscript verarbeitet. Es dauert dann teilweise 5sec bis die Daten erscheinen.
Ich habe nun einen MC vorgeschalten, der nach dem Verarbeitungsvorgang entfernt wird. Innerhalb diesen habe ich Textfelder, der eigentlich einige Statusvariablen anzeigen soll, damit der User sieht, dass (und evtl. was) da etwas passiert.
Ich habe schon im Forum gesucht, aber irgendwie bin ich nicht fündig geworden. - Gibt es da ein paar sinnvolle Möglichkeiten, wie z.B. ein kurzer Interrupt alle zehntel Sekunde oder so...?
__________________
JuL!
JuL! ist offline   Mit Zitat antworten
Alt 07-11-2005, 19:10   #2 (permalink)
tracer
 
Benutzerbild von andretti
 
Registriert seit: Jun 2004
Beiträge: 4.415
aloha!
habs net ganz verstanden, probier's dennoch:

PHP-Code:
_global.0;
statusArray = ["bilder werden geladen""größe wird berechnet""musik wird geladen""musiklänge wird berechnet""animationsprogramm wird geladen""animationsprogramm berechnet alle parameter...."];
var 
meldung setInterval(function () {
    if (
i>=statusArray.length) {
        
clearInterval(meldung);
    } else {
        var 
txt statusArray[i];
        
_root.pre_mc.T_info.text txt;
        
i++;
    }
}, 
10000); 
Angehängte Dateien
Dateityp: rar intervalmeldung.rar (3,8 KB, 3x aufgerufen)
__________________
Viola per Sempre
Alle Angaben ohne Gewehr!
trace your open mind in variables !
andretti
ActionScript Dictionary

Geändert von andretti (07-11-2005 um 19:11 Uhr)
andretti ist offline   Mit Zitat antworten
Alt 07-11-2005, 20:09   #3 (permalink)
Eternal Newbe
 
Registriert seit: Aug 2002
Ort: Heidelberg
Beiträge: 241
Nicht ganz. Ich habe mir ein ScrollPane gebaut, wo einige Seiten mit Daten generiert werden. Dieser Vorgang dauert auf meinem ollen G3 mit 700MHz ca. 30sec. Der Rechner ist dabei so am Rechnen, dass er zwar ein vorgeschalteten MC laden kann, aber während des Rechenvorgangs keinerlei Änderungen (z.B. eben Statusanzeige) gescheit möglich sein.
Die Frage ist also ob man trotz der hohen Auslastung Prozesse visuelle Prozesse zwischenschalten kann? - Quasi so eine Art Multitasking... oder so. - Ich hoffe das ist nun einigermassen rübergekommen.
__________________
JuL!
JuL! ist offline   Mit Zitat antworten
Alt 07-11-2005, 20:27   #4 (permalink)
:Void
 
Benutzerbild von janoshnosh
 
Registriert seit: Jun 2005
Ort: börlin
Beiträge: 931
hi,
ich denke das geht nicht mit flash. flash ist darauf ausgerichtet, seine frames auszuführen und erlaubt es dabei, zwischen den bildern berechnungen auszuführen. während der berechnung wird kein neues bild geliefert, d.h. wenn lange gerechnet werden muss, muss der nächste frame warten -> ein technisches problem eigentlich, und wenn es länger als ein paar sekunden dauert, sollte flash dir ja sowieso eine austiegsmöglichkeit anbieten.

ich weiß nicht, ob es zu realisieren ist, aber ich könnte mir vorstellen, dass du deine "berechnungen" in solch eine rekursive funktion packst, welche sich immer selbst wieder aufruft, aber nur, wenn eine bestimmt zeit nicht überschritten wurde. ansonsten lässt sie es zum frame-aufruf kommen und startet wieder und führt weitere berechnungen durch.....
das wäre nur ein schematisches model, zum einlesen von daten aus xml wäre so etwas bestimmt machbar, aber wie gesagt, nur theorie .

das thema wäre etwas für hgseib den technicker

gruß janosch
janoshnosh ist offline   Mit Zitat antworten
Alt 07-11-2005, 21:35   #5 (permalink)
AAI
 
Benutzerbild von AAI
 
Registriert seit: May 2004
Beiträge: 327
lass den Haufen nicht mit einem Mal
berechnen, sondern Scheibchenweise
im Interval (setInterval).

Nehmen wir an, die Berechnung ist ein
Kuchen: int1 = setInterval(eat_next_peace,8)

dadurch wird die Berechnung etwas verlangsamt,
(8ms * Kuchenstücke), aber es bleibt Zeit, etwas
auf dem Display darzustellen, z.B. aktuelles K.stück.

zudem wird vermieden, dass der Flashplayer komische
Fragen stellt...

Geändert von AAI (07-11-2005 um 21:38 Uhr)
AAI ist offline   Mit Zitat antworten
Alt 07-11-2005, 22:14   #6 (permalink)
Eternal Newbe
 
Registriert seit: Aug 2002
Ort: Heidelberg
Beiträge: 241
Ja, diese Methode hatte ich mir auch schon durch den Kopf gehen lassen... das werde ich dann vielleicht auch umsetzen.

Danke Leute!
__________________
JuL!
JuL! 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 10:16 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele