Flashhilfe.de - Flash Community

AS 3 Grundsätzliches zum Projektaufbau [Flash 10]

 


AntwortenRegistrieren Seite1  

Flashgirl#1
Benutzerbild von Flashgirl
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
derFloh#2
Benutzerbild von derFloh
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
 flo
www.heimatdesign.com
Florin Sans - Buy on myFonts / Fontspring
Flashgirl#3
Benutzerbild von Flashgirl
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...
derFloh#4
Benutzerbild von derFloh
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
 flo
www.heimatdesign.com
Florin Sans - Buy on myFonts / Fontspring
Flashgirl#5
Benutzerbild von Flashgirl
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....!!
Flashgirl#6
Benutzerbild von Flashgirl
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
derFloh#7
Benutzerbild von derFloh
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
 flo
www.heimatdesign.com
Florin Sans - Buy on myFonts / Fontspring
Geändert von derFloh am 02.09.10 um 21:49 Uhr

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2022 Sebastian Wichmann - Flashhilfe.de