PDA

Volledige versie bekijken : waarom werkt as niet op gehele mc met labels?


jambek2003
%Europe/Berlin %696 %2007, 17:43
Ik heb een movieclip met daarin labels die verschillende velden reflecteren. Ik heb de actionscriptcode in root hangen en wijs aboluut naar de velden. Toch werkt het maar tot tweede button/label.
Om deze problemen te voorkomen moet je roch juist as in root knallen en rest in een movieclip?! Wat doe ik fout?

registreerMovie_mc.onEnterFrame = function() {
this.stop();
};

registreerMovie_mc.stap1_btn.onRelease = function() {
registreerMovie_mc.gotoAndStop("stap2");
trace("klikte stap1");
}

registreerMovie_mc.stap2_btn.onRelease = function() {
registreerMovie_mc.gotoAndStop("stap3");
trace("klikte stap2");
}

registreerMovie_mc.stap3_btn.onRelease = function() {
registreerMovie_mc.gotoAndStop("end");
trace("klikte stap3");
}

var sschoolWachtwoord:String ="test1";
var svoornaam:String ="test2";
var sachternaam:String ="test3";
var sgebruikersnaam:String ="test4";

_root.registreerMovie_mc.textboxSchool_mc.textbox_ txt.text = sschoolWachtwoord
_root.registreerMovie_mc.textboxVoornaam_mc.textbo x_txt.text = svoornaam
_root.registreerMovie_mc.textboxAchternaam_mc.text box_txt.text = sachternaam
_root.registreerMovie_mc.textboxGebruikersnaam_mc. textbox_txt.text = sgebruikersnaam


Ik heb ff fla bijgevoegd

oh ja.. Kij ff niet naar de ranzige timeline van de mc, dit heb ik zo gedaan omdat ik moest copy-pasten naar deze movieclip.

jambek2003
%Europe/Berlin %833 %2007, 20:59
bump

levud
%Europe/Berlin %851 %2007, 21:26
_parent. gebruik je best ipv _root.

kan je al veel problemen schelen ;)

Laiverd
%Europe/Berlin %867 %2007, 21:48
_parent. gebruik je best ipv _root.

kan je al veel problemen schelen ;)Beweer s.v.p. wat zinnigs ;) Als iemand niet goed met _root om kan gaan, dan zal ie dat zeker niet met _parent kunnen.

Anyway: het probleem is dat je de button acties definieert voordat die buttons fysiek aanwezig zijn op je stage. Je registreermovie is welsiwaar aanwezig op frame 1 van je root, maar die stopt op frame 1, en dus 'kent' de player die andere twee buttons niet die verderop op de tijdlijn liggen.

OverigensregistreerMovie_mc.onEnterFrame = function() {
this.stop();
}; is een wel heel erg foute manier om een tijdlijn te stoppen; althans ik zie niet waarom je daarvoor een frameloop zou gebruiken. Gebruik gewoonregistreerMovie_mc.stop();
Het is altijd wat lastig wanneer je de tijdlijn gebruikt om dit soort dingen te programmeren, zeker als je je code centraal op 1 plek wilt houden (wat dus goed is). In dit geval zou de oplossing kunnen zijn om de actie voor button 2 te definieren in de onrelease van button 1, en die van button 3 in de onrelease van button 2.

Een andere (nettere) oplossing is natuurlijk om gewoon te gaan tellen: die buttons doen iedere keer eigenlijk gewoon hetzelfde; ze gaan naar eenlabel verder. Voorbeeld ter inspiratievar counter = 0
test_btn.onRelease = function(){
trace(counter);
counter++;
}

jambek2003
%Europe/Berlin %929 %2007, 23:18
ik ben idd een actionscript newbie.


Het is altijd wat lastig wanneer je de tijdlijn gebruikt om dit soort dingen te programmeren, zeker als je je code centraal op 1 plek wilt houden (wat dus goed is). In dit geval zou de oplossing kunnen zijn om de actie voor button 2 te definieren in de onrelease van button 1, en die van button 3 in de onrelease van button 2.
hoe moet ik me dat voorstellen? Ik heb dan toch nog het zelfde probleem?




var counter = 0
test_btn.onRelease = function(){
trace(counter);
counter++;
}



Ik zit dan toch nog steeds met het probleem om naar de juiste label te gaan. Moet ik dan een array maken met label namen erin en deze in de functie adresseren ofzo?

jambek2003
%Europe/Berlin %789 %2007, 19:56
Als ik weet waar ik naar moet zoeken zou ik zelf ook verder kunnen. Op het internet zie ik alleen deze problemen wanneer men ook nog eens een scene willen aanspreken, daar heb ik dus weinig aan. Ik hoef geen hapklare brokken alleen een antwoord die ik begrijp. De vorige roept nog meer vragen bij mij op.