Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 15-01-2005, 23:54   #1 (permalink)
New User();
 
Registriert seit: Jan 2003
Beiträge: 85
Question Existenz von MovieClips überprüfen

Hallo,

mit Sicherheit eine schnell zu beantwortende Frage; trotz alledem habe ich sie im Forum nicht gefunden.

Wie kann ich mit AS überprüfen, ob ein mc schon existiert?
[AS]if (!_root.meinmc) {
ActionScript:
  1. }
lief nicht.

Hintergrund:
Ich arbeite an einem Projekt. Vereinfacht sieht es wie folgt aus:
zwei Menüpunkte, Home und Kontakt.
Wenn die seite geladen wird, landet man direkt auf home. In dem gleichen Schlüsselbild werden auch die Inhalte in einzelne mcs geladen.

Wenn man auf Kontakt geht, werden weitere Inhalte in weitere mcs geladen.

Wenn man aber nun auf Home zurückgeht, werden diese ...loadMovie(...) Scripte natürlich wieder ausgeführt, obwohl die mcs schon geladen sind.

Das möchte ich umgehen.
Bossman2K ist offline   Mit Zitat antworten
Alt 16-01-2005, 00:15   #2 (permalink)
New User();
 
Registriert seit: Jan 2003
Beiträge: 85
Hat sich schon erledigt, entschuldigt den unnötigen Beitrag.

Wenn ein Moderator diesen Beitrag liest, kann er den Thread gerne löschen.



PS.:
[AS]if (! _root.meinmc) {
ActionScript:
  1. }
klappt einwandfrei
Bossman2K ist offline   Mit Zitat antworten
Alt 19-01-2005, 00:24   #3 (permalink)
New User();
 
Registriert seit: Jan 2003
Beiträge: 85
... und doch funktioniert es nicht. Folgendes AS habe ich vor mir liegen:

ActionScript:
  1. meinMc.onEnterFrame = function() {
  2. loadVariablesNum("getVariables.php", 0);
  3. testfeld.text = testvar;
  4. if (testvar) delete this.onEnterFrame;
  5. }

Meine Absicht: Solange die Variable testvar noch nicht existiert (noch nicht aus der getVariables.php in Flash importiert wurde), soll der Eventhandler onEnterFrame bestehen bleiben.
Erst wenn die Variable geladen wurde, kann er gelöscht werden (delete this.onEnterFrame;).

Auch wenn die Variable existiert, führt er die if-Schleife nicht aus, erkennt also das Argument nicht an.

Wer weiß, wie's geht?
Bossman2K ist offline   Mit Zitat antworten
Alt 19-01-2005, 00:31   #4 (permalink)
Neuer User
 
Benutzerbild von Xeef
 
Registriert seit: Sep 2004
Ort: Spain/Ibiza
Beiträge: 942
hmmm

PHP-Code:
loadVariablesNum("getVariables.php"0); 
meinMc.onEnterFrame = function() { 
testfeld.text testvar
if (
testvardelete this.onEnterFrame


</FONT>
__________________
Languages : (in the order of knowledge/preference)
Read: Flash AS, PHP, JS, Html, DHtml, Basic, C++, DOS, 3DMaxScript, English, Deutsch, Magyar, XML, Pascal, VB, Spanish
Write: Flash AS, Basic, PHP, JS, DHtml, Html, ..., C++, ...., ..., English, ..., ..., ..., ...., Deutsch, ..., Magyar

wen du mein deutsch nicht magst whele eine andere sparache von den obrigen ;)
Xeef ist offline   Mit Zitat antworten
Alt 19-01-2005, 00:45   #5 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
Hi.

Ich würde auf jeden Fall LoadVars() benutzen.
LoadVariables ist depreciated.

Da mach man das dann mit deineVar.onLoad=function(){..};
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz ist offline   Mit Zitat antworten
Alt 19-01-2005, 04:37   #6 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
ActionScript:
  1. myLV = new LoadVars();
  2. myLV.onLoad = function(success){
  3.         var tmpText;
  4.         if(success){
  5.           tmpText = this.testvar;
  6.         }else{
  7.           tmpText = 'Fehler beim Laden der Datei!';
  8.         }
  9.          testfeld.text = tmpText;
  10. }
  11.  
  12. myLV.load('getVariables.php');





greetz

kelor
kelor ist offline   Mit Zitat antworten
Alt 19-01-2005, 06:51   #7 (permalink)
helpQLODhelp
 
Benutzerbild von bokel
 
Registriert seit: Feb 2002
Ort: Köln
Beiträge: 8.505
Zitat:
Zitat von thebiz
LoadVariables ist depreciated.
Seit wann ist es deprecated? Ich kann in der Doku nichts darüber finden.

mfg r.
bokel ist offline   Mit Zitat antworten
Alt 19-01-2005, 07:27   #8 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
@ bokel

Ich wollte mal schlau klingen.

Aber tatsächlich. In der Flash-Hilfe steht da nix.
In meiner Colin Moock Referenz wird angeraten
LoadVars zu benutzen, weil es mächtiger ist.
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------

Geändert von thebiz (19-01-2005 um 08:51 Uhr)
thebiz ist offline   Mit Zitat antworten
Alt 19-01-2005, 08:43   #9 (permalink)
helpQLODhelp
 
Benutzerbild von bokel
 
Registriert seit: Feb 2002
Ort: Köln
Beiträge: 8.505
Ah gut, ich dachte schon, ich hätte was nicht mitgekriegt.
Stimmt schon, LoadVars ist mächtiger.
mfg r.

Geändert von bokel (19-01-2005 um 08:56 Uhr)
bokel ist offline   Mit Zitat antworten
Alt 21-01-2005, 23:58   #10 (permalink)
New User();
 
Registriert seit: Jan 2003
Beiträge: 85
Zitat:
Zitat von kelor
ActionScript:
  1. myLV = new LoadVars();
  2. myLV.onLoad = function(success){
  3.         var tmpText;
  4.         if(success){
  5.           tmpText = this.testvar;
  6.         }else{
  7.           tmpText = 'Fehler beim Laden der Datei!';
  8.         }
  9.          testfeld.text = tmpText;
  10. }
  11.  
  12. myLV.load('getVariables.php');





greetz

kelor

Dir und allen anderen, die sich rege an meiner Fragestellung beteiligt haben vielen Dank! Die Methode, dyn. Texte über eigens erstellte LoadVars();-Instanzen zu steuern scheint mir in der Tat eleganter, einfacher und flexibler zu sein.

Nur eins ist mir noch nicht ganz klar: Was hat der Parameter "success"
Code:
myLV.onLoad = function(success){
zu bedeuten?

Grüße
Bossman2K ist offline   Mit Zitat antworten
Alt 22-01-2005, 00:39   #11 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
success ist lediglich ein platzhalter, den flash liefert, wenndie daten komplett geladen wurden.
den könntest du auch einfach :'suc' nennen oder sonst wie...
er weist darauf hin, dass nur bei korrektem, vollständig abgeschlossenen ladevorgang die bedingung ausgeführt werden soll...

das ist auch schon alles



greetz

kelor
kelor ist offline   Mit Zitat antworten
Alt 22-01-2005, 00:39   #12 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Steht eigentlich in der Flash-Hilfe
************************************************** **********
LoadVars.onLoad

Verfügbarkeit

Flash Player 6.

Verwendung

meinLoadVars.onLoad(erfolgreich)

Parameter

erfolgreich Dieser Parameter gibt an, ob der Ladeoperation erfolgreich war (true) oder fehlschlug (false).

Rückgaben

Ein Boolescher Wert.

Beschreibung

Ereignisprozedur; wird aufgerufen, wenn ein load- oder sendAndLoad-Vorgang zu Ende ist. Wenn der Vorgang erfolgreich war, werden die durch load bzw. sendAndLoad heruntergeladenen Variablen in meinLoadVars kopiert und bei Aufruf von onLoad zur Verfügung gestellt.

Der Standardwert dieser Methode lautet undefined; Sie können die Methode durch Zuordnung einer Rückruffunktion definieren.

Die Methode LoadVars.onLoad ähnelt der Methode XML.onLoad des XML-Objekts.

************************************************** **********
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 22-01-2005, 05:52   #13 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
Ich benutze das "success" oder "erfolgreich" oder
wie man das auch nenne will nie.
Entzieht sich auch meinem Verständnis.
Es funktioniert ja auch ohne.

(ich zitiere)
Der onLoad() Händler wird immer dann automatisch ausgeführt,
wenn externe Variablen fertig geladen und in Eigenschaften von
LoadVarsObject konvertiert (geparst) wurden.

Für was also noch ein success einbauen?
Das ist für mich doppelt gemoppelt und bislang
noch nicht sinnreich erschienen.
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz ist offline   Mit Zitat antworten
Alt 22-01-2005, 11:08   #14 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
Zitat:
(ich zitiere)
Der onLoad() Händler wird immer dann automatisch ausgeführt,
wenn externe Variablen fertig geladen und in Eigenschaften von
LoadVarsObject konvertiert (geparst) wurden.
genau du...sagts es selbst biz...
fertig geladen ja...aber ob korrekt die daten eingelesen wurden ?! genau dafür ist success da...das wird nur gefeuert, wenn die daten nicht nur vollständig( das ist ja der onLoad), sondern auch korrekt eingelesen werden konnten...

und sag jetzt net, dass das kein unterschied sei..


greetz

kelor
kelor 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:37 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele