| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| oEF(etischist) Registriert seit: Dec 2003 Ort: muc
Beiträge: 664
| Verständisproblem mit "prototype"
Hallo, habe folgende Funktion, die ein Movieclip bei on enterFrame ständig aufruft. ActionScript:
Ergebnis: für jeden MC, der die Function aufruft kommt, richtiger weise, eine andere entfernung zur Mausposition. Alternativ habe ich folgendes versucht: ActionScript:
Die "berechneEntfernung"-Funktion liegt in einem MC, in dem die MCs liegen, die diese Funktion aufrufen. Warum liefern beide Versuche unterschiedliche Ergebnisse? Danke! solo |
| | |
| | #2 (permalink) |
| mod_rewrite Registriert seit: Feb 2003 Ort: München
Beiträge: 15.621
|
Probier mal so: ActionScript:
__________________ RTFM Wie man Fragen richtig stellt. Achim Bindannmalweg Money makes the world go round, fear makes it turn much faster. (New Model Army) Geändert von sonar (18-01-2004 um 10:48 Uhr) |
| | |
| | #4 (permalink) |
| mod_rewrite Registriert seit: Feb 2003 Ort: München
Beiträge: 15.621
|
Ja gehen tuts schon - is ja kein Muss, mein Ansatz. Nur - eine Referenz auf einen MC mit zu übergeben, is unnötig, da ja eine Methode für die Klasse MovieClip generiert wird. Und wenn eh immer der Abstand zur Maus berechnet werden soll, kann man das ja auch gleich mit reinnehmen.
__________________ RTFM Wie man Fragen richtig stellt. Achim Bindannmalweg Money makes the world go round, fear makes it turn much faster. (New Model Army) |
| | |
| | #5 (permalink) |
| oEF(etischist) Registriert seit: Dec 2003 Ort: muc
Beiträge: 664
|
Hallo, Danke, hat funktioniert. Und, ich denke ich hab's verstanden ![]() aber: wieso muss ich this._parent._xmouse verwenden? _parent._xmouse klappt nicht, dachte, das sei das gleiche? bin etwas verwirrt. Grüße, solo Geändert von soloFlash (18-01-2004 um 13:59 Uhr) |
| | |
| | #6 (permalink) |
| Neuer User Registriert seit: Jun 2001 Ort: Stuttgart
Beiträge: 6.415
|
dein prototype ist falsch solo: ActionScript:
und willst dann in DIESEM mc den mc nochmal selbst suchen, er ist aber ne zeitleiste tiefer vorhanden dein script würde durch diese änderung auch funktionieren a = this[clip]._x-x; ändern in a = this._parent[clip]._x-x; analaog dazu das b bei dir wurden nur die mauskoordinaten ausgegeben denn this[clip]._x lieferte jeweils ein undefined in der rechnung wurde das undefined zur 0 konvertiert deine werte entsprachen daher: a=-x b=-y und sonar hat sich ja schon drüber ausgelassen wie unnötig und unflexibel deine ansteuerung is ![]() deluxe @solo das this bruachste seit mx da du den onEnterFrame event als funktion zuweisst und nicht direkt auf den mc sind gewisse gültigkeitsregeln der variablen Geändert von Deluxe (18-01-2004 um 14:03 Uhr) |
| | |
| | #7 (permalink) | |
| oEF(etischist) Registriert seit: Dec 2003 Ort: muc
Beiträge: 664
|
@deluxe: ja, ich denke, ich habs mittlerweile kapiert (wird sich beim nächsten Versuch ja rausstellen )also, ist dann das in deinem und Sonars Sinne? ActionScript:
und deluxe, was meintest du mit Zitat:
grüße, solo | |
| | |
| | #8 (permalink) |
| Neuer User Registriert seit: Jun 2001 Ort: Stuttgart
Beiträge: 6.415
|
hmm schon besser wobei ich den onEnterFrame weggelassen hätte und später erst gesagt hätte ActionScript:
damit biste wesentlich flexibler denn so kannst du mehr funktionen in einen enterframe event des mcs packen im anderen fall würden die sich immer überschreiben. gültigkeitsregeln, in dem zusammenhang fällt immer das wort "scoping" damit kannst du aber nicht viel anfangen denke ich. also hab ichs mal in reiner deutscher sprache versucht ![]() bsp.: ne variable im root ist im mc xyz der im root liegt nicht "gültig" du musst erst den pfad zum root angeben und hast dann damit zugriff auf diese variable genauso ist es mit dem this und parent du musst mit dem this erst sagen "hey ich meine genau DEINE zeitleiste und keine andere" du verweist also auf die zeitleiste und kannst nun von da aus auf die _parent eigenchaft zugreifen oder auf andere eigenshcaften wie _xmouse etc bisschen kompakt gehalten aber soltle doch schon helfen deluxe |
| | |
| | #9 (permalink) |
| oEF(etischist) Registriert seit: Dec 2003 Ort: muc
Beiträge: 664
|
"scoping" sagt mir tatsächlich nichts, Gültigkeitsbereiche sehr wohl. dennoch, ist mir eins noch nciht ganz klar: der unterschied zwischen this._parent und _parent. this ist das objekt selbst. _parent das übergeordnete this._parent auch das übergeordnete? mein Problem funktioniert nur mit this._parent, und ich weiss, dass ich ne ebene höher muss, aber dachte immer mit _parent würde ich das erreichen. Danke für Eure schnelle Hilfe und Eure Erklärungen, solo |
| | |
| | #10 (permalink) |
| mod_rewrite Registriert seit: Feb 2003 Ort: München
Beiträge: 15.621
|
Es kann eigentlich nie schaden, mit "this" einen Zeiger auf das aktuelle Objekt zu setzen, seit MX gehört das auch "zum guten Ton". In der Definition einer prototype-Methode musst du wohl mit "this" arbeiten, weil es ja zu dem Zeitpunkt noch kein konkretes Objekt gibt, auf welches sich Eigenschaften wie _x, _y oder auch _parent beziehen (die Flash z.B. in einem onClipEvent-Handler automatisch zuordnen kann). ...und "scoping" und Gültigkeitsbereiche meint das selbe
__________________ RTFM Wie man Fragen richtig stellt. Achim Bindannmalweg Money makes the world go round, fear makes it turn much faster. (New Model Army) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |