| |||||||
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: Mar 2009
Beiträge: 6
|
hallo, ich brauche dringend hilfe bei folgendem beispiel, ich sitze hier schon seit bestimmt 5 stunden und komme einfach nicht weiter, ich glaube ich habe irgendwie ein brett vorm kopf! PHP-Code: PHP-Code: warum wird nicht der neue wert ausgegeben? der code mach folgendes. er liest eine xml datei ein, wenn das laden abgeschlossen ist wird mittels eines eventhandlers auf die methode loadPlaylist zugegriffen in welcher ich die xml daten an ein array übergeben möchte. dieses array ist eine object eigenschaft und sollte nachdem ich es in der methode loadPlaylist geändert habe diese änderung ja auch übernehmen. Mein Problem ist allerdings das dies aus irgendeinem Grund nicht funktionieren möchte, ich komme aber einfach nicht drauf warum. wenn ich den wert in der methode loadXML ändere, wird dies übernommen, allerdings nicht in der methode in der das event behandelt wird. ich brauche echt hilfe... meine geduld ist auch langsam am ende, ich bin seit 5-6 stunden an diesem problem und komme einfach nicht weiter! ![]() ![]() |
| | |
| | #2 (permalink) |
| Perverted Hermit Registriert seit: Mar 2004 Ort: Delmenhorst
Beiträge: 12.139
|
Du wartest beim Nutzen der Klasse nicht, bis die Daten geladen sind.
__________________ http://icodeapps.net | Meet me at the Flex user group Hamburg talking about CoffeeScript |
| | |
| | #3 (permalink) |
| Raven-Kid Registriert seit: Feb 2006
Beiträge: 350
|
das alte Lied ... das Ladeverhalten (in Flash) ist asynchron. Die onComplete Events gibts nicht ohne Grund und dabei verwendest du bereits einen x) Also den Aufruf von ausgabe() in die loadPlaylist Methode Geändert von [RK] (26-03-2009 um 07:41 Uhr) |
| | |
| | #4 (permalink) |
| Neuer User Registriert seit: Mar 2009
Beiträge: 6
|
hallo, danke erstmal für die antworten. dass wenn ich die ausgabe aus der methode loadPlaylist aus aufrufe die richtige ausgabe liefert habe ich auch schon festgestellt. jedoch finde ich das ein bischen unpraktisch. was ist wenn ich später aus einer anderen methode auf eben die eigenschaft playList[x] zugreifen möchte? das würde ja heisen das dies nicht geht, eben nur aus der methode loadPlaylist raus. gibt es da nicht noch eine andere lösung? ich habe später vor eine methode mit dem namen playSong() zu implementieren, diese soll das auf eben diese eigenschaft zugreifen, aber das problem ist das diese immer noch den altern wert bekommt. ich muss noch anmerken das ich mit as3 noch nicht allzu vertraut bin, ist halt schon etwas komplexer als as2, daher wäre ich über code beispiele sehr dankbar! ich habe auch schon einiges über eventdispathcer gelesen aber schlau werde ich daraus auch nicht, irgendwie habe ich auch noch nicht den unterschied zischen eventdispatcher und eventlistener raus, ...ist es der das beim dispatcher eigene werte übergeben werden und beim listener eben fest hinterlegte events gesendet werden? Geändert von reloaded (26-03-2009 um 11:23 Uhr) |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Apr 2002
Beiträge: 496
|
du könntest dir auch events dispatchen und in der timeline abfangen - dann brauchst du die methoden nicht in der klasse "verketten" also in loadplaylist einfach neues event auslösen: PHP-Code: PHP-Code: wenn du später auf die playlist zugreifen möchtest ohne neu laden musst du halt sicherstellen dass sie vorher schon geladen wurde - zb über eine private var in der klasse mit einer getter-methode für den zugriff
__________________ Grafik - Webdesign - Programmierung - www.thsc.at Adventkalender 2011 advent.wien.info/de Jobspace - Universum der Lehrstellen www.jobspace.at |
| | |
| | #6 (permalink) |
| Neuer User Registriert seit: Mar 2009
Beiträge: 6
|
@padavan genial, von der theorie her genau das was ich im prinzip gebraucht habe, kann es nur leider erst heute abend testen, aber der anstaz ist genau der richtige da ich aus der hauptzeitleiste die entsprechenden methoden der klasse mp3player aufufen möchte und nicht über die methode loadPlaylist() selbst! also ich hoffe das ich es soweit richtig interpretiert habe, mir geht es aber zusätzlich noch darum den genauen unterscheid zwischen einem EventListener und einem EventDispatcher in erfahrung zu bringen, für mich ist nur ersichtlich das ein eventlistener auf eine bestimmtes event wartet, welches in flash fest definiert ist, mitteles des disptachers jedoch auf ein belibiges ereignis regaiert werden kann, welches ich selbst definieren und an belibiger stelle abfragen kann. BITTE KORRIGIERT MICH WENN ICH DAMIT FLASCH LIEGE! ...damit ich endlich mal in as3 durchblicke! die flash hilfe war für mich leider nicht gerade verständlích im bezug auf dieses thema. |
| | |
| | #7 (permalink) |
| Perverted Hermit Registriert seit: Mar 2004 Ort: Delmenhorst
Beiträge: 12.139
|
__________________ http://icodeapps.net | Meet me at the Flex user group Hamburg talking about CoffeeScript |
| | |
| | #8 (permalink) |
| Neuer User Registriert seit: Mar 2009
Beiträge: 6
|
ersteinmal danke für die antworten, diese haben zwar nicht eins zu eins so funktioniert aber sie haben mich definitiv auf den richtigen weg gebracht so das es nun so funktioniert wie es soll. falls jemand die lust hat, wäre es super einmal die relevanten stellen im code zu überfliegen um mir zu sagen ob diese implementierung dem, sagen wir mal, standart entspricht oder ob es eher quick and dirty ist. besonders interessant für mich wäre es noch zu wissen was der unterschied zwischen public var testDispatcher1:IEventDispatcher = new IEventDispatcher(); und public var testDispatcher2:EventDispatcher = enw EventDispatcher(); ist. die unrelevanten teile der Klasse und des aufrufes habe ich im folgenden code entfernt... ...soviel also dazu... leider bin ich wärend der weiteren arbeit auf ein weiteres porblem gestoßen, und zwar rufe ich die klasse ja aus der hauptzeitleiste auf, funktioniert alles super. auf der bühne habe ich dann movieclips aus meiner bibliothek plaziert und mit einem instanz namen versehen. über die hauptzeitleiste kann ich diese auch super über den instanznamen ansprechen, zB trace(muteSymbol.width). jedoch wollte ich eben diese, schon auf der bühne platzierten movieclips aus methoden meiner klasse Mp3Player bearbeiten, bzw deren eigenschaften auslesen/ändern. EDIT: habe mal bezüglich des ansprechens der mc's einen neuen thread eröffnet, denke das ist besser als das hier zu diskutieren http://www.flashforum.de/forum/showt...76#post1847576 jetzt stehe ich allerdings vor dem, für mich, riesen problem das diese mc's nicht aus der klasse über ihre instanznamen angesprochen werden können und ich auch keine ahnung habe wie dies gehen soll. ein ansatz von mir war es das ich die mc's aus der bibliothek für as verfügbar mache und diese dann mit zB: var m:MuteSymbol = new MuteSymbol(); und anschließendem addchild(m) auf die bühne bringe, diese sind innerhalb einer methode der klasse instanzieert worden wodurch ich zugriff auf deren eigenschaften etc habe, natürlich mit definierten eventlistener für addedonstage. da ich die mc's über drag & drop auf der bühne allerdings kompfortabler plazieren und arrangieren kann und ich zudem definitiv nur eine instanz dieser mc's brauche würde mich dringend interesserien wie ich diese aus meiner klasse ansprechen kann. zur errinerung, ich möchte keine neune objekte von mc's aus der bibliothek erstellen und diese ansprechen sondern mc's, welche sich ab frame1 der hauptzeitleiste auf der bühne befinden und über ienen instanznamen verfügen. PHP-Code: PHP-Code: leider Geändert von reloaded (28-03-2009 um 02:52 Uhr) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |