Loading:


    Przeciągany suwak, wersja prototype - Scroll Bar [ AS3 ]

    2. Robienie porządku w kodzie

     

    Wytnijmy cały kod z warstwy Actions, stwórzmy nowy plik w katalogu: net->funkcje->ui o nazwie ScrollBar.as oraz wklejmy kod podany poniżej.



    Dalsza czê¶æ: 1 2 3 4 5 6

    Napisz Artyku³

    Listing


    package net.funkcje.ui
    {
            import flash.display.*;
            import flash.events.*;
           
            public class ScrollBar extends MovieClip {
                   
                    private var roznicaY:Number;
                    private  var minY:Number;
                    private var maxY:Number;
                   
                    public function ScrollBar():void {
                            minY = 0;
                            maxY = trasa_mc.height - suwak_mc.height;
                            suwak_mc.addEventListener(MouseEvent.MOUSE_DOWN, nacisniety_suwak);
                            stage.addEventListener(MouseEvent.MOUSE_UP, zwolnienie_suwaka);
                    }
                   
                    private function nacisniety_suwak(e:MouseEvent):void {
                            stage.addEventListener(MouseEvent.MOUSE_MOVE, poruszanie_suwaka);
                            roznicaY = mouseY - suwak_mc.y;
                    }
                   
                    private function zwolnienie_suwaka(e:MouseEvent):void {
                            stage.removeEventListener(MouseEvent.MOUSE_MOVE, poruszanie_suwaka);
                    }
                   
                    private function poruszanie_suwaka(e:MouseEvent):void {
                            //tworzenie granic
                            suwak_mc.y = mouseY - roznicaY;
                            if (suwak_mc.y <= minY)
                                    suwak_mc.y = minY;
                           
                            if (suwak_mc.y >= maxY)
                                    suwak_mc.y = maxY;
                            //pozycja procentowa suwaka
                            var pozycja:Number = suwak_mc.y / maxY;
                           
                            //wysyłanie zdarzenia dla innych plików
                            dispatchEvent(new ScrollBarEvent(pozycja));
                           
                            //pod uwagę margines górny
                            e.updateAfterEvent();
                    }
            }
    }





    Dodano przez: divix
    Ranga: Administrator serwisu Punktów: 0
    Komentarze użytkowników
      • Tre¶æ komentarza
        Kod do komentarza (opcjonalnie)
        PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
        Autor
        Token
        token

         

         








    funkcje.net
    Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-2025 v.1.5 | design: diviXdesign & rainbowcolors