| |||||||
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: Apr 2008
Beiträge: 12
| Probleme mit shared Library und Basisklassen
Hi! Ich bin mit meinem Latein am Ende und habe das Gefühl, dass Flash hier eventuell auch nicht korrekt funktioniert. Wir haben hier eine e-Learning Anwendung. Ich möchte mittels einer allgemeinen Buttonklasse (von uns erstellt) einen konkreten Button in vielen Inhaltsseiten benutzen, am besten via shared library oder so. Mal kurz das Szenario: Es gibt eine shared.swf, in der befindet sich ein exportierter Button namens MyButton. Dieser hat eine Klasse (MyButton.as) die wiederum von einer eigens erstellten allgemeinen CustomButton-Klasse erbt (die CustomButton-Klasse erbt dann von MovieClip). In MyButton.as werden bestimmte MovieClips innerhalb von MyButton angesprochen und positioniert usw. Wenn ich jetzt in einer weiteren SWF (content1.swf) MyButton von der shared.swf importiere und auf die Bühne packe, dann funktioniert das alles ohne Probleme. Anders, wenn ich in einer SWF (content2.swf) MyButton nur in der Library liegen habe (aus der shared importiert wie bei content1) und MyButton dann per ActionScript platzieren will, dann schmeißt er Laufzeitfehler. Er findet in MyButton.as die MovieClips, die angesprochen werden, nicht mehr. Es kommt mir so vor als käme er durch das sharen in der Vererbungskette durcheinander oder so.... hat da jemand ne Idee?? Ich hoffe meine Beschreibung ist nicht zu verwirrend :-| Danke und Grüße, Carsten. |
| | |
| | #2 (permalink) |
| Klugscheisser Registriert seit: Jun 2001 Ort: Düsseldorf
Beiträge: 1.354
|
Initialisierst Du ordentlich? Code: class MyButton extends CustomButton {
private var element1:MovieClip;
private var element2:MovieClip;
function MyButton() {
if (stage) handleAddedToStage();
else addEventListener(Event.ADDED_TO_STAGE, handleAddedToStage);
}
private function handleAddedToStage(event:Event = null) :void
{
removeEventListener(Event.ADDED_TO_STAGE, handleAddedToStage);
element1 = getChildByName("element1");
element2 = getChildByName("element2");
layout();
}
private function layout() :Void
{
element1.x = 10;
element1.y = 10;
element2.x = 10;
element2.y = 50;
}
} Geändert von T.Decay (26-01-2012 um 15:34 Uhr) |
| | |
| | #3 (permalink) |
| Perverted Hermit Registriert seit: Mar 2004 Ort: Delmenhorst
Beiträge: 12.141
|
Wenn du eine Klassendefinition verwenden willst, die noch geladen werden muss... führt das zu Fehlern...
__________________ http://icodeapps.net | Meet me at the Flex user group Hamburg talking about CoffeeScript |
| | |
| | #4 (permalink) |
| Neuer User Registriert seit: Apr 2008
Beiträge: 12
|
Hi! Danke für die Antworten. Es geht jetzt, irgendwie. Ich habe so einiges hin und herprobiert daher fällts mir jetz schwer im nachhinein zu sagen, was genau das Problem war. Ich versuchs trotzdem mal falls jemand ein ähnliches Problem hat: Klar ist aber: Wenn man einen MovieClip (mit eigener Klasse) shared, dann müssen alle im MovieClip enthaltenen MovieClips die man später ansprechen möchte als public vars instanziert sein. Denke das war der Hauptfehler. Weiterhin hatte ich ein wenig Probleme mit dem Pfad zur sharedLib, das kriegt man mit Probieren aber ganz gut hin. Außerdem habe ich die sharedLib jetzt nach dem Appstart (läuft mit robotlegs das Ganze) in einem Command mit einem Loader geladen und den LoaderContext auf ApplicationDomain.currentDomain gesetzt. Jetzt findet er zu jeder Zeit alle shared-Elemente quasi wie damals in AS2 *g*
|
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Shared Library Export URL | Karuma | ActionScript 2 | 0 | 17-08-2006 13:13 |
| Shared Library und AS2 | santa horst | Softwarearchitektur und Entwurfsmuster | 2 | 09-08-2005 09:26 |
| shared library | nb05 | ActionScript 1 | 0 | 11-08-2003 09:41 |
| shared library | GittiF | Flash MX | 0 | 18-09-2002 08:44 |
| Shared Library | smn007 | Flash MX | 3 | 28-08-2002 09:04 |