Jeg har lavet en slider hvor man i constructor kan tilføje 2 movieclips et for Sliderbase og Et for SliderKnob (den man trækker i) af en eller anden grund kan jeg ikke tilgå tilføje eventListeners til mine movieclips og buttonMode=true har ingen visuel virkning, men ellers kan jeg tilgå dem med eksempelvis scaleX og y properties.
min constructor:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | public function CustomSlider(min:int = 0, max:int = 10, base:MovieClip = null, knob:MovieClip = null) { _minimum = min; _maximum = max; // check if there is a knob/base passed in the constructor if not create a generic: if (knob == null) { sliderKnob = createDefaultKnob(); this.addChild(sliderKnob); } else { sliderKnob = knob; } if (base == null) { sliderBase = createDefaultBase(); this.addChild(sliderBase); } else { this.x = base.x sliderBase = base; } _value = _minimum; xMin = this.x + MARGIN_X; sliderKnob.x = xMin; xMax = this.x + sliderBase.width - MARGIN_X; // EventListeners: sliderBase.addEventListener(MouseEvent.MOUSE_DOWN, dragKnob); sliderKnob.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); } |
3 kommentarer
Hej Koolie
Umiddelbart tyder det på at du har et stykke grafik liggende over dine knapper. Muligvis transperant. Hvis det er tilfældet vil din buttonMode ikke vise nogen hånd og dine MouseEvents ikke blive dispatched. Så prøv lige at tjekke din grafik igennem og sikre dig, at der ikke lige skulle ligge noget grafik, hen over det du lytter på. Det er i hvert fald et godt sted at starte.
//Claussen
Du har husket at importere event librariet ik?
Problemet blev løst. Der lå noget ovenover Slideren. Tak Claussen!
Kunne bare ikke se det da det var en animation bestående af transparente png'ere. Der er dog opstået et andet problem. Jeg har ændret lidt på min constructor:
Jeg vil gerne have at Slideren er generisk så den enten får en Slider/Knob via constructoren eller laver en generisk udgave vha. CreateDefaultKnob/CreateDefaultSlider (begge returner MovieClips) Hvis jeg fra min documentclass passer slider/knob movieclips fra stage forsvinder de fra stage når addChild bliver kaldt (det var derfor addchild lå i if sætningerne i den forrige constructor. Det er dog nødvendigt at placere den udenfor da et slider/knob genereret i constructoren fra library ikke ville blive vist ellers. Altså tilsyneladende vil det at jeg kalder addChild på stageinstances i CustomSlider klassen få dem til at forsvinde - ville have forventet at de blot skiftede parents så at sige. Håber det giver mening
@Cruiser - jeps selvfølgelig... det sker helt automatisk i FD