Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 03-06-2004, 14:09   #1 (permalink)
nky
Bontempi Punk
 
Benutzerbild von nky
 
Registriert seit: Dec 2001
Ort: Dtld/Pfalz
Beiträge: 4.185
referenz statt pfade verwenden

hi - ich hab hier ein snippet.....das würde ich gerne ändern - schaffs aber net
ich will eigentlich lediglich nen mc erstellen - und auf diesern per referenz verweisen...

wenn ich dann aber sage refrenz._visible=false - gehts net...siehe code...

wenn ich den auskomemntierten befehl (mit root vornedran) nutze - gehts.....gerade das will ich ja aber vermeiden....


ActionScript:
  1. var mc=_root.createEmptyMovieClip('mc'+_root.count,_root.count)this.mc=mc;
  2. this.mc._x=0;
  3. this.mc._y=0;
  4. this.mc._width=this.b;
  5. this.mc._height=this.h
  6. this.mc._visible=false
  7. //_root[this.mc]._visible=false;
  8.  

Bokel hat das in seinem Vortrag über Architektur so ausgedrückt
Zitat:
Verschachtelte MovieClips
Tip: Nicht mit Pfaden, sondern mit Referenzen arbeiten.
Anstatt
_root.ebene1.ebene2.superding.machWas()
_root.ebene1.ebene2.superding.machWasAnderes()
lieber
superding = _root.ebene1.ebene2.superding;
superding.machWas()
superding.machWasAnderes()
aber genauso tuts halt nicht .....



wär nett wenn mir jemand auf die sprünge helfen könnte

Gruss nky
nky ist offline   Mit Zitat antworten
Alt 03-06-2004, 14:11   #2 (permalink)
helpQLODhelp
 
Benutzerbild von bokel
 
Registriert seit: Feb 2002
Ort: Köln
Beiträge: 8.505
Deine Variable mc ist ja lokal, keine Eigenschaft. Lass "this" einfach weg, dann passt es.

Edit:
huh, was steht denn da hinter dem create... noch ?


mfg .r
bokel ist offline   Mit Zitat antworten
Alt 03-06-2004, 14:17   #3 (permalink)
nky
Bontempi Punk
 
Benutzerbild von nky
 
Registriert seit: Dec 2001
Ort: Dtld/Pfalz
Beiträge: 4.185
Hi Bokel - wo ich grad den Verantwortlichen an der Strippe habe - ich war zwar nicht auf der Konferenz - aber die UNterlagen hab ich mir durchgelesen und fand sie sehr anregend - DANKE FÜR DIE TIPPS !

Zur Sache:
so leicht kann ich mirs leider nicht machen
das ganze ist eine abstrakte klasse die eigentlich nur ein paar werte erhält und nen mc erstellt...

in der abgeleiteten klasse will ich aber in diesen mc ein bild laden...
nun versuche ich (als test oob die refernz stimmt) das bild unsichtbar zu machen....aber ich kriegs net hin...

hier mal das ganze gerüst damit du`s besser sehen kannst...

ActionScript:
  1. //abstrakte Basisklasse aus der die Items gebildet werden
  2. item=function(pArr)
  3. {   
  4.     var elements = ["typ","pfad","bezeichnung","linienfarbe","fuellfarbe","alpha","b","h","x","y","stage","optional","textform","stageHeight"];
  5.     for(var i=0; i<elements.length; i++)
  6.         this [elements[i]] = pArr[i]   
  7.     _root.count++   
  8.    
  9.     var mc=_root.createEmptyMovieClip('mc'+_root.count,_root.count) 
  10.     this.mc=mc;
  11.     this.mc._x=0;
  12.     this.mc._y=0;
  13.     this.mc._width=this.b;
  14.     this.mc._height=this.h
  15.     this.mc._visible=false
  16.     //_root[this.mc]._visible=false;   
  17.     killarr.push(this.mc)      
  18. }
  19.  
  20. ------------------------------------------------------------------
  21. //klass abgeleitet aus item...
  22. bild = function(pArr)
  23. {       
  24.     super(pArr) 
  25.              //hier brauche ich THIS.MC wieder...
  26.     this.mc.loadMovie(this.pfad,_root.count)
  27.     this.mc._x=this.x
  28.     this.mc._y=this.y
  29.     //this.mc._visible=false;
  30. }
  31. bild.prototype = new item();
nky ist offline   Mit Zitat antworten
Alt 03-06-2004, 14:25   #4 (permalink)
helpQLODhelp
 
Benutzerbild von bokel
 
Registriert seit: Feb 2002
Ort: Köln
Beiträge: 8.505
Ah, ok.
Das funktioniert schon, allerdings wird es wieder auf true gesetzt, sobald das Bild geladen ist. Probier es mal mit _alpha.

mfg .r
bokel ist offline   Mit Zitat antworten
Alt 03-06-2004, 14:31   #5 (permalink)
nky
Bontempi Punk
 
Benutzerbild von nky
 
Registriert seit: Dec 2001
Ort: Dtld/Pfalz
Beiträge: 4.185
argh
mit dem alpha komm ich leider auch net weiter...

wenn ich anstatt _visible=false ..._alpha=0 benutze..
hat das keinen effekt...ich seh immer noch alles

der einzige versuch der bis jetzt geklappt hat - war der auskommentierte "root" versuch aus dem allerersten beispiel..

das peinigt mich - so schwer kanns doch net sein ne kleine referenz zu machen....

Gruss nky
nky ist offline   Mit Zitat antworten
Alt 03-06-2004, 14:38   #6 (permalink)
helpQLODhelp
 
Benutzerbild von bokel
 
Registriert seit: Feb 2002
Ort: Köln
Beiträge: 8.505
Ist es auch nicht
Versuch es mal mit trace(this.mc), das muesste dir schon weiterhelfen.

btw. wozu der zweite Parameter bei loadMovie ? Und deine Superklasse erzeugt auch dann einen MovieClip, wenn du eigentlich nur vererben möchtest.

mfg .r
bokel ist offline   Mit Zitat antworten
Alt 03-06-2004, 14:43   #7 (permalink)
nky
Bontempi Punk
 
Benutzerbild von nky
 
Registriert seit: Dec 2001
Ort: Dtld/Pfalz
Beiträge: 4.185
hi
das mit der superklasse ist mal ein berechtigter einwand

bisher bin ich davon ausgegangen das alle abgeleitteten Klassen auch einen MC brauchen z.b für bild oder textfeld..
allerdings könnte es evtl. später tatsächlich einmal der Fall sein - das ich eine Klasse ableite die keinen MC benötigt....ich werde das mal überdenken - und den mc evtl in der abgeleiteten klasse erstellen ...ist auf jeden fall der sauberere weg..

zu loadmovie - ich denke das braucht 2 parameter ? wenn ich den einen weglasse - was passiert dann ? wirds dann automatisch in den Mutterclip geladen ?

Ich check jetzt mal die traces

Gruss & Danke für die Hilfe
nky
nky 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 06:08 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele