AS 3 Grundsätzliches zum Projektaufbau [Flash 10]
| Beiträge: 40 Registriert: Nov 2006
| 02.09.2010, 07:30
Hallo Forum,
Ich habe eine Präsentation
> mit Schaltern (Haupt- und Untermenüs), die auf einer Ebene über die ganze Präsentation hinweg liegen / am Anfang werden die einzelnen Schalterfunktionen definiert
> nach dem Klicken der jeweiligen Schalter springt man zu bestimmten Frames in dem die Inhalte geladen werden
Problem: Da ich teilweise via removeChild Inhalte entfernen muss, die in den verschiedenen Frames liegen, von denen die Schalterfunktionen am Anfang noch gar nichts wissen, bekomme ich allerhand Fehlermeldungen wie diese hier, sobald ich einen der Schalter anklicke:
Parameter child darf nicht 'null' sein.
Meine Frage zum grundsätzlichen Projektaufbau:
Muss man, um solche Fehler zu vermeiden, alle Elemente am Anfang, also im gleichen Frame wie die Schalterfunktionen der Menüs definieren und visible auf false schalten oder gibt es eine andere Methode?
Versteht mich wer??? | Geändert von Flashgirl am 02.09.10 um 07:30 Uhr | |
| | Beiträge: 992 Wohnort: ..::LAGE::.. Registriert: Apr 2006
| 02.09.2010, 09:11
hi flashgirl,
am besten ist, ganz auf die zeitleiste zu verzichten!!! die bringt nur probleme.
alles was die zeitleiste kann, kannst du hundert mal besser programmieren.
also: alles spielt sich auf dem ersten frame ab, deine inhalte können zum beispiel als
klasse in der bibliothek liegen. wenn du einen schalter klickst, sagst du dann sowas wie:
var meinInhalt : Klassenname = new Klassenname();
this.addChild( meinInhalt );
später dann einfach:
this.removeChild( meinInhalt );
hoffe das bringt dich erstmal auf die richtige spur :)
grüße
flowww.heimatdesign.com
Florin Sans - Buy on myFonts / Fontspring | | | Beiträge: 40 Registriert: Nov 2006
Themenautor/in
| 02.09.2010, 10:51
Hm...offenbar hast Du recht. Ich springe von einem Frame zum anderen, habe zwar einige Klassen im Spiel....aber eben nicht so konsequent, wie Du vorschlägst. Ich habe extreme Schwierigkeiten, die einzelnen Elemente in den verschiedenen Frames aus- und einzublenden. Meine Scripte sind super unübersichtlich und ich möchte die Sache am liebsten an die Wand werfen... | | | Beiträge: 992 Wohnort: ..::LAGE::.. Registriert: Apr 2006
| 02.09.2010, 11:49
Hi,
ich habe dir mal einen aufbau geschrieben, der komplett ohne die zeitleiste auskommt.
ein und ausblenden wird mit ner tweeningklasse gemacht... schaus dir an und bei fragen fragen!
Testprojekt.zip (59.86 KB)
und hier noch die referenz. dort kannst du alle klassen und methoden nachschauen.
http://help.adobe.com/de_DE/AS3LCR/Flash_10.0/class-summary.html
grüße
flowww.heimatdesign.com
Florin Sans - Buy on myFonts / Fontspring | | | Beiträge: 40 Registriert: Nov 2006
Themenautor/in
| 02.09.2010, 12:02
Ah...
Du meinst also, man hat die main.as, über die man die einzelnen Teile der Präsentation zusammen setzt?
> Darin definiert man genauer gesagt Schalter und Funktionen um die Inhalte-MCs ein und ausblenden kann.
> Man weißt dazu allen Elementen in den Bibliothekseigenschaften einen Klasse zu.
> in jeder Schalterfunktion übergibt man an eine Variable eine Art Statusmeldung, was gerade als Inhalt geladen wurde
> dann hast Du noch verschiedenen Tweens geschrieben, die entweder einen Inhalt einblenden oder aber vorher noch den alten ausblenden
Kommt total gut bei mir an....!! | | | Beiträge: 40 Registriert: Nov 2006
Themenautor/in
| 02.09.2010, 17:46
Eine Frage:
Wenn ich alle Teilfunktionen in die Main.as schreibe, wird das Script ziemlich lang. Macht es Sinn, einzelne Teile des Projektes in verschiedene Scriptdateien zu verteilen. Beispielsweise nur eine für die Buttons und eine für die einzelnen Inhalte, je nachdem wie viel da zu schreiben ist?
Wenn ja, wie führe ich die in der Main.as an welcher Stelle zusammen?? | Geändert von Flashgirl am 02.09.10 um 17:46 Uhr | |
| | Beiträge: 992 Wohnort: ..::LAGE::.. Registriert: Apr 2006
| 02.09.2010, 21:44
hi
ja sinn macht das schon. allerdings kann ich dir da kein geheimrezept geben. das kommt halt auf deine anwendung an. sicherlich kannst du wenigstens die funktionalitäten deiner buttons auslagern. Vielleicht benötigst du auch gar nicht mehr den Button in der Bibliothek, sondern zeichnest alles in der Button Klasse. Genauso sicherlich später für den Content.
Wenn Du irgendwann Erfahrung gesammelt hast, macht es Sinn Daten, Anzeigeobjekte und Steuerung von einnander zu kapseln... so eine Art des Aufbaus (Model-View-Controller) macht deine Anwendung übersichtlicher und skalierbarer.
edit: zusammenführen wirst du diese dateien genauso, wie bislang auch. du importierst die klasse und erstellst eine instanz davon.
grüße
flowww.heimatdesign.com
Florin Sans - Buy on myFonts / Fontspring | Geändert von derFloh am 02.09.10 um 21:49 Uhr | |
|
| Ähnliche Beiträge zum Thema | |
|
Flashhilfe.de Flash Platform Tipps & Tutorials Flash Platform Andere Programmiersprachen Jobangebote Diskussionen
Flashhilfe News 
Regeln & Bedingungen
|