Dobrodošli, goste ( Prijava | Registracija )

OOP Help, AS3 OOP Problemi

V
jossaric
poruka Jul 1 2011, 16:18
Poruka #1




Grupa: Članovi
Poruke: 247
Datum reg.: 23-August 07
Lokacija: Mostar
Član broj: 13,637



Dakle, imam problem, radim svoju prvu oop stranicu i malo me grebe logika.

napravio sam Main klasu i u packageu sam radio ostale klase.
Koristim SWFAddress i problem je ovaj.

imam klasu za meni i klasu za dugme.

u dugme klasi su samo definirani event listeneri i pripadajuće funkcije

CODE
package com.jossaric{
    import flash.display.MovieClip;
    import flash.events.MouseEvent;    
    import com.greensock.*;
    
    public class RestoBut extends MovieClip{

        public function RestoBut() {
            var rb:MovieClip = this as MovieClip;
            rb.mouseChildren = false;
            rb.buttonMode = true;
            
            rb.addEventListener(MouseEvent.MOUSE_OVER, restoButOver);
            rb.addEventListener(MouseEvent.MOUSE_OUT, restoButOut);
            rb.addEventListener(MouseEvent.CLICK, restoButClick);
        }
        
        private function restoButOver(e:MouseEvent):void{
            TweenMax.to(e.target.bg, .3, {tint:0x333333});
        }
        private function restoButOut(e:MouseEvent):void{
            TweenMax.to(e.target.bg, .3, {tint:null});
        }
        private function restoButClick(e:MouseEvent):void{    
            var t:String = e.target.name.substr(2);
            Main.setAddress(t);
        }
    }
    
}


Svako dugme sa ovakvom klasom je dodano u meni klasu. Kao što vidite ovdje ja prosljeđujem varijablu (dio imena koji je u biti id) u main klasu i tamo želim da prema tome označim i disejblam odnosno odznačim i enablam određenu dugmad.

Funkcija kojom želim da označavam dugmad u meniju nalazi se u Main klasi i glasi

CODE
public static function markRestoNav(list:XMLList, mc:MovieClip):void{
            for(var i:uint = 0; i<list.length(); i++) {
                var bt:MovieClip = mc.getChildByName('bt' + i) as MovieClip;
                trace(bt);
            }
        }



a pokrećem je iz main klase iz change address handlera sa

CODE
if(_xml != null && t1 != null) {
                var rm:MovieClip = getChildByName('restoMenu') as MovieClip;
                RestoMenu.markRestoNav(_xml, rm);
            }


i trejsuje mi bt kao null, pokušao sam na razne načine no očito imam rupu u logici.
Go to the top of the page
 
+Quote Post

Poruke u ovoj temi



Reply to this topicStart new topic

 



Lo-fi verzija Trenutno vreme: Thursday 23. May 2013 - 06:29

Sve informacije (poruke, teme i sl.) predstavljaju stavove samo njihovih autora.
Objavljivanje informacija sa sajta u nekomercijalne svrhe moguće je samo uz navođenje URL adrese diskusije.
Za sve druge vidove distribucije potrebno je imati izričitu dozvolu administratora Dizajn Zone i/ili autora poruka.
Autorska prava za sadržaj poruke zadržava njihov autor, osim ako nije drugačije naznačeno.

powered by:Plus hosting