Nicht zur Laufzeit, nein. Sie können jedoch Bibliotheksobjekte mit JSFL in der IDE bearbeiten: http://livedocs.adobe.com/flash/9.0/main/flash_cs3_extending.pdf. Nicht sicher, ob das überhaupt hilft, aber vielleicht können Sie Code für die Verwendung in Ihrer Anwendung generieren, indem Sie die Bibliothek in irgendeiner Weise analysieren.
var lib = fl.getDocumentDOM().library;
for (var i = 0; i < lib.items.length; i++)
{
var item = lib[0];
fl.trace(item.name + " " + item.getItemType());
}
Vielleicht einige Code generieren auf Basis von Bibliotheksobjekten getItemProperty()
oder getItemType()
.
Abgesehen davon denke ich, dass deine beste Wette ist, wie die anderen sagten. Erstelle einen Dummy-MovieClip, der jedes Element enthält und es von der Bühne entfernt. Fügen Sie einen Listener für "add to stage" hinzu und durchlaufen Sie seine untergeordneten Elemente und verwenden Sie "reflection" getQualifiedClassName, um Aktionen basierend auf der Klasse auszuführen oder verwenden Sie einfach einen Instanznamen und eine switch-Anweisung.
Schließlich, was ist es genau, dass Sie auf jedem dieser MovieClips "verarbeiten"? Vielleicht ist es eher ein Design-Problem, und alle sollten eine gemeinsame MovieClip-Unterklasse erweitern, der ein "Add-to-stage" -Handler hinzugefügt wurde, wo Sie den MovieClip-Typ betrachten, wie er Ihrer Anwendung hinzugefügt wird, und einige Aktionen in diesem single ausführen Funktion. Ich arbeite gerade an einigen Lokalisierungsarbeiten bei der Arbeit und so verarbeiten wir mehrere verschiedene Clips zur Laufzeit.
Sie jeden MC in einen Behälter hinzufügen und dann durch, dass für Orte und Sachen durchlaufen. Hatte gehofft, diesen mittleren Schritt zu vermeiden. – Scott