AS3 - van pagina switchen vraag

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • scidhuv
  • Registratie: Februari 2009
  • Laatst online: 07-01-2024
Ik ben een site aan het bouwen als beginnende flasher, waarbij ik aan het "OOP" wil vasthouden.
Nu heb ik een Main.as die 5 swf's (letters) op een lege pagina plaatst en deze worden ieder bestuurd via een eigen externe .as. Wanneer ik een van deze swfs aan klik zou het naar de volgende pagina moeten gaan.
Vooralsnog heb ik op de 2e pagina alleen een background gezet (allemaal dmv code, geen items op de timeline) - waneer ik nu de swf aanklik die naar pagina 2 zou moeten gaan zie ik ook de background, maar de middelste 3 swf's van pagina 1 staan er bovenop...

Nu dacht ik, mschien moet ik die verwijderen met "removeChild", maar dan zegt hij dat ze niet bestaan

oftewel ik add de swf met:
code:
1
this.addChild(A_btn);

in de Main.as - dit werkt de letter "A" swf komt op de stage
Als ik dan in de Main2.as voor de 2e pagina dit code:
code:
1
this.removeChild(A_btn);

geeft hij de error:
1120: Access of undefined property A_btn.

Maarja de swfjes blijven wel op mn 2e pagina staan.

Heeft iemand hier een idee over?

Acties:
  • 0 Henk 'm!

  • R4gnax
  • Registratie: Maart 2009
  • Laatst online: 06-09 17:51
Begin maar eens eerst met jezelf de grondbeginselen van object oriented programming aan te leren. Zonder die kennis kun je wel gaan proberen iets met Actionscript 3 code te gaan doen, maar zul je consequent falen omdat je de onderliggende begrippen en kennis simpelweg mist.

Nu je vraag beantwoorden zou dan ook enkel vergeefse moeite zijn. Dat ga ik dus ook bewust niet doen (en hopelijk volgt de rest mijn voorbeeld). Zodra je voldoende achtergrond kennis hebt om zelf te begrijpen waarom wat je hier gedaan hebt fout is, ben je klaar om je eerste regels Actionscript 3 te gaan schrijven. Tot die tijd: studeren i.p.v. programmeren.

Acties:
  • 0 Henk 'm!

  • ath92
  • Registratie: Augustus 2007
  • Laatst online: 03-05 10:34
In plaats van
code:
1
this.removeChild(A_btn);
zou het moeten werken met
code:
1
this.removeChild(this.getChildByName("A_btn"));
Waarbij je nog wel ergens
code:
1
A_btn.name="A_btn";
moet plaatsen (ergens na het aanmaken oid)

  • scidhuv
  • Registratie: Februari 2009
  • Laatst online: 07-01-2024
Begin maar eens eerst met jezelf de grondbeginselen van object oriented programming aan te leren. Zonder die kennis kun je wel gaan proberen iets met Actionscript 3 code te gaan doen, maar zul je consequent falen omdat je de onderliggende begrippen en kennis simpelweg mist.

Nu je vraag beantwoorden zou dan ook enkel vergeefse moeite zijn. Dat ga ik dus ook bewust niet doen (en hopelijk volgt de rest mijn voorbeeld). Zodra je voldoende achtergrond kennis hebt om zelf te begrijpen waarom wat je hier gedaan hebt fout is, ben je klaar om je eerste regels Actionscript 3 te gaan schrijven. Tot die tijd: studeren i.p.v. programmeren.
Mja dit soort berichten zie je wel vaker en daar ben ik het dus niet mee eens, praktijk leert veel sneller naar mijn ervaring en ja wellicht vraag je dan wat moeite van anderen maar dit is ook goed om de inet resource te verbeteren als je een duidelijke vraag stelt en een duidelijk antwoord krijgt.
Verder, als je de moeite niet wil doen hoeft dat ook zeker niet ;) en ik ben van mening dat dit bericht eigenlijk dus volledig nutteloos is en nog het meest de tijd verdoet van iedereen hier (inclusief jouzelf).

Over de achtergrondkennis wil ik nog zeggen dat ik een belachelijk dik boek heb gelezen alsmede vele internet tutorials en artikelen, het is mij ook daaruit opgevallen dat de documentatie rond AS3 ontzettend te wensen over laat.

Ik heb al eerder gevraagd of iemand een goede bron weet voor OOP AS3, maar niemand schijnt het te weten :s (en dan bedoel ik niet dat ik dit hier een keer heb gevraagd maar ik heb er ook naar gezocht als een CSI medewerker).

Ik dacht toch dat de essentie van OOP is dat je niks op timelines code en volledig met packages werkt en swfjes? Wellicht heb ik dit fout, dat stel ik dan bij als ik voor de verandering eens een duidelijke bron voor ogen krijg ;)

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
scidhuv schreef op donderdag 19 augustus 2010 @ 09:29:
Ik dacht toch dat de essentie van OOP is dat je niks op timelines code en volledig met packages werkt en swfjes? Wellicht heb ik dit fout, dat stel ik dan bij als ik voor de verandering eens een duidelijke bron voor ogen krijg ;)
OOP heeft niets met een timeline te maken ;)
Wikipedia: Object-oriented programming

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Avalaxy
  • Registratie: Juni 2006
  • Laatst online: 23:08
scidhuv schreef op donderdag 19 augustus 2010 @ 09:29:
[...]

Ik dacht toch dat de essentie van OOP is dat je niks op timelines code en volledig met packages werkt en swfjes? Wellicht heb ik dit fout, dat stel ik dan bij als ik voor de verandering eens een duidelijke bron voor ogen krijg ;)
"Object Georiënteerd" betekent letterlijk dat je met objecten werkt (dwz instanties van klassen) ;)

  • R4gnax
  • Registratie: Maart 2009
  • Laatst online: 06-09 17:51
scidhuv schreef op donderdag 19 augustus 2010 @ 09:29:
Mja dit soort berichten zie je wel vaker en daar ben ik het dus niet mee eens, praktijk leert veel sneller naar mijn ervaring en ja wellicht vraag je dan wat moeite van anderen maar dit is ook goed om de inet resource te verbeteren als je een duidelijke vraag stelt en een duidelijk antwoord krijgt.
Je hebt alleen sneller een (tussentijds) resultaat op je scherm staan als je iteratief, met horten en stoten, aan loopt te morrelen. Je leert er echter niet sneller van, zeker niet als je alleen een paar 'magische' regels code terug geschoten krijgt die je onmiddelijke probleem verhelpen.

Kom, vertel eens waarom je eerdere oplossing incorrect was en waarom ath92's wijzigingen een verbetering (maar zeker niet een architectureel correcte oplossing) zijn? Heb je daar geen antwoord op, dan heb je exact nul-komma-nul geleerd.

Verder zijn dit het soort vragen & antwoorden die totaal nutteloos zijn voor mensen die de basis wèl beheersen en is het resultaat dan ook alleen maar witte ruis die de wèl nuttige topics verdringt.
scidhuv schreef op donderdag 19 augustus 2010 @ 09:29:
Over de achtergrondkennis wil ik nog zeggen dat ik een belachelijk dik boek heb gelezen alsmede vele internet tutorials en artikelen, het is mij ook daaruit opgevallen dat de documentatie rond AS3 ontzettend te wensen over laat.

Ik heb al eerder gevraagd of iemand een goede bron weet voor OOP AS3, maar niemand schijnt het te weten :s (en dan bedoel ik niet dat ik dit hier een keer heb gevraagd maar ik heb er ook naar gezocht als een CSI medewerker).

Ik dacht toch dat de essentie van OOP is dat je niks op timelines code en volledig met packages werkt en swfjes? Wellicht heb ik dit fout, dat stel ik dan bij als ik voor de verandering eens een duidelijke bron voor ogen krijg ;)
Bij Adobe is er volledige documentatie beschikbaar van de complete standard libraries. Waar jij hulp mee zoekt is hoe object oriented programming in het algemeen werkt. Concepten als classes, interfaces, delegates, etc. etc.

Dat is generieke kennis die je niet speciaal toegespitst op ActionScript moet gaan lopen zoeken. Vandaar dus ook: leer - jezelf - eerst - de - grondbeginselen. Zoek het breed en niet gelijk op ActionScript toegepast!

[ Voor 9% gewijzigd door R4gnax op 19-08-2010 13:19 ]


  • scidhuv
  • Registratie: Februari 2009
  • Laatst online: 07-01-2024
OOP heeft niets met een timeline te maken
Wikipedia: Object-oriented programming
"Object Georiënteerd" betekent letterlijk dat je met objecten werkt (dwz instanties van klassen)
Dat is toch precies zoals ik het uitleg / begrijp volgens mij :|
Je maakt classes en swfjes (movieclips / etcetc) aan en deze "objects" gebruik je dan om een geheel mee te vormen door er instances van te plaatsen op een stage.

Volgens mij snap ik gewoon wat OOP is, ook aangezien het maken van een webpagina me gewoon goed af gaat zonder iets op de timeline te hebben staan van de .fla
ik vraag me dus een beetje af waarom er word beweerd dat ik het niet snap :s

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Avalaxy schreef op donderdag 19 augustus 2010 @ 13:00:
[...]


"Object Georiënteerd" betekent letterlijk dat je met objecten werkt (dwz instanties van klassen) ;)
Er komt wel wat meer bij kijken. Abstractie, encapsulatie, polymorphisme etc. etc. etc. ;)
scidhuv schreef op donderdag 19 augustus 2010 @ 13:24:
Dat is toch precies zoals ik het uitleg / begrijp volgens mij :|
Je maakt classes en swfjes (movieclips / etcetc) aan en deze "objects" gebruik je dan om een geheel mee te vormen door er instances van te plaatsen op een stage.
De objects (movieclips en andere "flash objecten") waar jij het over hebt zijn heel andere objects dan waar je het in OOP over hebt. Daar zit 'm de kneep.
scidhuv schreef op donderdag 19 augustus 2010 @ 13:24:
Volgens mij snap ik gewoon wat OOP is, ook aangezien het maken van een webpagina me gewoon goed af gaat zonder iets op de timeline te hebben staan van de .fla
Nogmaals, OOP heeft niets met timelines (of Flash for that matter) te maken.
scidhuv schreef op donderdag 19 augustus 2010 @ 13:24:
ik vraag me dus een beetje af waarom er word beweerd dat ik het niet snap :s
Omdat jij het over hele andere objecten hebt ;)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Avalaxy
  • Registratie: Juni 2006
  • Laatst online: 23:08
RobIII schreef op donderdag 19 augustus 2010 @ 13:28:
[...]

Er komt wel wat meer bij kijken. Abstractie, encapsulatie, polymorphisme etc. etc. etc. ;)
Uiteraard. Maar dat zijn slechts subtiele sidenotes, als je het hebt over polymorphisme heb je het nog steeds over (instanties van) klassen en dus objecten.

Acties:
  • 0 Henk 'm!

  • Tsjilp
  • Registratie: November 2002
  • Niet online

Tsjilp

RS[I]ds

Waarom werk je met losse swfjes? maak het onnodig complex. Tenzij je swf-jes > 500kb per stuk zijn, dan heeft het wellich wel nut.

Raar... Is zo gek nog niet

Pagina: 1