Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 21-12-2005, 20:43   #1 (permalink)
oEF(etischist)
 
Registriert seit: Dec 2003
Ort: muc
Beiträge: 664
Name der Funktion ermitteln...Wie?

Hallo,

weder in Forum, noch in der Flashhilfe in ich fündig geworden ;(

gibt es eine Möglichkeit herauszubekommen, wie eine Funktion heisst, die gerade ausgeführt wird?

Bsp.:
PHP-Code:
this.tuWas = function () {
  
// tut was ganz tolles
  
trace(????); // Wunschergebnis: "tuWas"

Danke!!!
__________________
Grüße,
solo

Die Antwort auf fast alle Fragen gibt es hier: AS-Referenz
Weitere Fehlerquellen sind:
Flasche Pfadangeben oder falsch versorgte Variablen. Beides kann man gut hiermit überprüfen.
Und den Debugger gibts ja auch noch :)
soloFlash ist offline   Mit Zitat antworten
Alt 21-12-2005, 21:03   #2 (permalink)
Pharao a.D.
 
Benutzerbild von Tut-ench-aton
 
Registriert seit: Jul 2004
Ort: 29°58'33.34'' N, 31°07'49.29'' O
Beiträge: 430
Machs doch einfach so:
Code:
function Funktion1 (){
running="Funktion1"
//CODE
}
function Funktion2 (){
running="Funktion2"
//CODE
}
//CODE
onEnterFrame=function(){
trace(running)
}
Tut-ench-aton ist offline   Mit Zitat antworten
Alt 21-12-2005, 21:08   #3 (permalink)
Der Wunderhund
 
Benutzerbild von gaspode
 
Registriert seit: Jun 2002
Ort: Hattingen
Beiträge: 10.515
ich weiß nicht genau, wie es bei dir vom syntax
her gemacht werden müßte, aber ließ die mal die
flashhilfe zum befehl «arguments.caller» durch.

gruß, gaspode
gaspode ist offline   Mit Zitat antworten
Alt 21-12-2005, 21:10   #4 (permalink)
oEF(etischist)
 
Registriert seit: Dec 2003
Ort: muc
Beiträge: 664
ja, ist möglich, aber ist nicht das, was ich suche, denn die Funktion selber muss es wissen, wie sie heisst.
Die Funktionen werden dynamisch erstellt (und machen eigentlich nichts besonderes). Ich weiss also erst zur Laufzeit die Namen, und diese Namen brauch ich dann wieder im einzelnen Funktionsaufruf.
Sowas wie function.getName(); wäre traumhaft
__________________
Grüße,
solo

Die Antwort auf fast alle Fragen gibt es hier: AS-Referenz
Weitere Fehlerquellen sind:
Flasche Pfadangeben oder falsch versorgte Variablen. Beides kann man gut hiermit überprüfen.
Und den Debugger gibts ja auch noch :)
soloFlash ist offline   Mit Zitat antworten
Alt 21-12-2005, 21:11   #5 (permalink)
oEF(etischist)
 
Registriert seit: Dec 2003
Ort: muc
Beiträge: 664
@gaspode: ja das klingt gut, werde ich machen. Danke für den hinweis!!!!!!
EDIT: trace liefert mir bei arguments.callee immer [type Function]. Laut Flash-Hilfe sollte doch das mir die aktuelle Funktion liefern, oder? Muss ich das noch irgendwie auflösen???
__________________
Grüße,
solo

Die Antwort auf fast alle Fragen gibt es hier: AS-Referenz
Weitere Fehlerquellen sind:
Flasche Pfadangeben oder falsch versorgte Variablen. Beides kann man gut hiermit überprüfen.
Und den Debugger gibts ja auch noch :)

Geändert von soloFlash (21-12-2005 um 21:21 Uhr)
soloFlash ist offline   Mit Zitat antworten
Alt 21-12-2005, 21:42   #6 (permalink)
Achim Math.PI
 
Benutzerbild von bloba
 
Registriert seit: Jul 2001
Ort: cool Colonia
Beiträge: 11.642
frage : wozu musst du das wissen, resp. gibts andere mögl.keiten das rauszufindne bzw setzte in jede function eine variable mit dem etspr. namen und frag diesen ab.

ich mein das so
PHP-Code:
function test() {
    
this.nam "test";
}
function 
test1() {
    
this.nam "test1";
}
test();
trace(nam);
test1();
trace(nam); 
__________________
gruß bloba

2 x onkel² b_d

Geändert von bloba (21-12-2005 um 21:48 Uhr)
bloba ist offline   Mit Zitat antworten
Alt 22-12-2005, 08:09   #7 (permalink)
oEF(etischist)
 
Registriert seit: Dec 2003
Ort: muc
Beiträge: 664
ja, es wäre nicht schlecht es zu wissen, da ich was ausprobiere und es mit den Variablen nicht geht, da jede Funktion selber seinen eigenen Namen kennen muss.
wenns gar nicht geht, dann halt nicht. Wäre nur schön gewesen, den "Call Stack" auszulesen. Sollte ja irgendwie gehen, wenn nicht, muss ich halt was anderes machen.
Danke für die bisherigen Vorschläge, auch wenn sie mir nicht helfen ;(
__________________
Grüße,
solo

Die Antwort auf fast alle Fragen gibt es hier: AS-Referenz
Weitere Fehlerquellen sind:
Flasche Pfadangeben oder falsch versorgte Variablen. Beides kann man gut hiermit überprüfen.
Und den Debugger gibts ja auch noch :)
soloFlash ist offline   Mit Zitat antworten
Alt 22-12-2005, 09:00   #8 (permalink)
helpQLODhelp
 
Benutzerbild von bokel
 
Registriert seit: Feb 2002
Ort: Köln
Beiträge: 8.505
In Flash sind Funktionen auch Objekte, deshalb kannst du ihnen auch weitere Eigenschaften verpassen, wie z.B. einen Namen.
Der Zugriff kann dann innerhalb der Funktion über arguments.callee passieren.

PHP-Code:
this.tuWas = function () {
  
// tut was ganz tolles
  
trace(arguments.callee.name); // Wunschergebnis: "tuWas"
}  

this.tuWas.name "tuWas"
mfg. r

Geändert von bokel (22-12-2005 um 09:02 Uhr)
bokel ist offline   Mit Zitat antworten
Alt 22-12-2005, 09:37   #9 (permalink)
oEF(etischist)
 
Registriert seit: Dec 2003
Ort: muc
Beiträge: 664
ich hab doch gewusst, dass ich so was in der art irgendwo schon mal gehört habe. DANKE! Es funktioniert und hilft mir weiter.
__________________
Grüße,
solo

Die Antwort auf fast alle Fragen gibt es hier: AS-Referenz
Weitere Fehlerquellen sind:
Flasche Pfadangeben oder falsch versorgte Variablen. Beides kann man gut hiermit überprüfen.
Und den Debugger gibts ja auch noch :)
soloFlash 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 01:19 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele