| |||||||
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) |
| Neuer User Registriert seit: May 2004
Beiträge: 7
|
Hallo Leute, ich habe ein ärgerliches Problem. Und zwar habe ich folgenden Beispielcode: Code: import mx.utils.Delegate;
import mx.transitions.Tween;
import mx.transitions.easing.*;
class Carousel extends MovieClip {
public function Carousel (){
trace("construktor");
}
public function begin(){
t.icon.onRelease = Delegate.create(t,released);
}
private var released:Function = function() {
trace("released");
var t:MovieClip = this;
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut, t._xscale,100,1,true );
trace("onMotionStopped");
tw.onMotionStopped = Delegate.create(t, unReleased);
};
private var unReleased:Function = function() {
trace("unReleased");
};
} tw.onMotionStopped = Delegate.create(t, unReleased); Kann es sein, dass man innerhalb einer Funktion nicht noch einmal eine Funktion aufrufen kann?? wenn ich hingegen folgendes schreibe funktioniert es: Code: import mx.utils.Delegate;
import mx.transitions.Tween;
import mx.transitions.easing.*;
class Carousel extends MovieClip {
public function Carousel (){
trace("construktor");
}
public function begin(){
t.icon.onRelease = Delegate.create(t,released);
}
private var released:Function = function() {
trace("released");
var t:MovieClip = this;
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut, t._xscale,100,1,true );
trace("onMotionStopped");
var unReleased:Function = function() {
trace("unReleased");
};
tw.onMotionStopped = Delegate.create(t, unReleased);
};
} Vielen Dank im Voraus Geändert von |Xne.3 (09-11-2008 um 00:04 Uhr) |
| | |
| | #2 (permalink) |
| ChronoGuard Registriert seit: Mar 2002 Ort: Saarbrücken
Beiträge: 2.649
| PHP-Code: Das wäre das erste. Dann leg mal die functions mit den Standard-Syntax an (wie auch die public function), nicht mit diesem Variablen-Syntax var soundso:Function = function():Void {} . Ich wusst gar nicht, dass der überhaupt noch zulässig ist in AS2-Klassen.
__________________ we will stop enhancing the truth in 3, 2, ... Geändert von SpecOps-12 (09-11-2008 um 10:21 Uhr) |
| | |
| | #3 (permalink) |
| muh Registriert seit: Apr 2002 Ort: Freiburg / Stuttgart
Beiträge: 4.338
|
was ist bitte ein OOP Funktionsaufruf ![]() Vielleicht solltest du Funktionen auf die übliche Weise definieren: Nicht PHP-Code: PHP-Code: EDIT: oh, das stand ja schon da
__________________ »Carpe diem«, sagte der Graf. (Terry Pratchett: Ruhig Blut!) |
| | |
| | #4 (permalink) |
| Neuer User Registriert seit: May 2004
Beiträge: 7
| danke für die tipps, nur leider ...
funktioniert das auch nicht. ich habe jetzt folgendes probiert: PHP-Code: thx for you help, greez xne |
| | |
| | #5 (permalink) |
| ChronoGuard Registriert seit: Mar 2002 Ort: Saarbrücken
Beiträge: 2.649
|
der Scope des Tweens liegt auf dem icon, das auf der _root erzeugt wird, nicht auf der Instanz deiner Klasse. Denn du deligierst den Scope der onRelease-Listener-Function ebenfalls auf das icon, nicht auf die Klasseninstanz "home". Nachfolgend ne Lösung. Wobei ich die Klasse dann eher direkt an das Bibliotheken-Objekt anhängen würde und mit attachMovieClip statt "new Classtest()" initiieren würde. Ist in AS2 halt leider alles etwas seltsam mit MovieClip-Erben. PHP-Code:
__________________ we will stop enhancing the truth in 3, 2, ... |
| | |
![]() |
| Lesezeichen |
| Stichworte |
| class, delegate, klassen, oop |
| Themen-Optionen | |
| Ansicht | |
| |