PDA

Volledige versie bekijken : rollover button probleem


jf88
%Europe/Berlin %716 %2010, 17:12
Ik ben nieuw in actionscript en probeer nu iets (in mijn ogen) heel simpels te maken maar het wil maar niet lukken.

Ik heb in mijn flash bestand een aantal buttons aangemaakt. Een van die buttons heb ik "btn_clients" genoemd (instance naam). Nu wil ik dat wanneer over die button wordt gehoverd de flash film vanaf frame 2 begint te spelen.

Nu heb ik een nieuwe layer aangemaakt genaamd "actions" en daarin op frame 1 de volgende code toegevoegd:

stop();

btn_clients.addEventListener(MouseEvent.MOUSE_OVER , clientsMouseOver);

function clientsMouseOver(e:MouseEvent):void{
btn_clients.removeEventListener(MouseEvent.MOUSE_O VER, clientsMouseOver);

gotoAndPlay(2);
}Ik wil dat er bij het openen van de flash file geen handeling gebeurd totdat ik over "btn_clients" scroll. Het probleem is dat met de huidige code hierboven mijn flash movie na 1x compleet afspelen met een fout terugkomt, namelijk:

TypeError: Error #1009: Kan geen eigenschap of methode benaderen via een verwijzing naar een object dat null is.
at clients_fla::MainTimeline/frame1()

Wanneer ik "Stop(); weghaal begint de flash movie uit zichzelf en kan ik over de button heen hoveren zoveel als ik wil, hij begint dan niet opnieuw.

Hoe is dit op te lossen?

Jarno!
%Europe/Berlin %751 %2010, 18:02
Bij mij werkt je code gewoon, ik denk (ook aangezien de foutmelding) dat je je button toch niet de juiste Instance Name hebt gegeven.

cornedor
%Europe/Berlin %856 %2010, 20:32
staat de knop op de frame die je als laatste bekijkt? of heb je die op een frame staan waarbij de actionsscript niet staat?

jf88
%Europe/Berlin %606 %2010, 14:33
Het scriptje werkt ook wel. Echter wanneer hij 1 keer alle frames heeft afgespeeld komt hij met die foutmelding.

Ik heb "stop();" toegevoegd aan het begin omdat ik wil dat standaard het filmpje niet begint. Pas als ik iets trigger (in dit geval door de rollover) mag ie alle frames gaan afspelen.

Hij doet het nu dus eenmalig en komt na het compleet afspelen met de foutmelding die wordt veroorzaakt door de stop(); functie. Verder heeft btn_clients de goede instance naam.

Nreal
%Europe/Berlin %712 %2010, 17:06
Staat je button alleen in Frame 1? Het lijkt erop dat je script wordt gefired in andere frames. Waar natuurlijk je knop niet meer bestaat en NULL is.

PageMaker
%Europe/Berlin %861 %2010, 20:40
Bovendien; moet je die gotoandplay() niet in de eventhandler zetten?