Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Ошибка в панели управления (http://www.flasher.ru/forum/showthread.php?t=208171)

mariamarfi 11.06.2014 22:32

Ошибка в панели управления
 
Доброго вечера! Помогите мне, пожалуйста. В чём тут ошибка. Почему некоторые кнопки не функционируют...
SeekBar, и время, и звук не работают... и кнопка плейстоп.

Код AS3:

import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.events.MouseEvent;
import fl.video.FLVPlayback;
 
var counter: uint = 0;
var myxml: XML = new XML();
 
var myLoader: URLLoader = new URLLoader();
 
myLoader.load(new URLRequest("xmls/videos_thems_animale.xml"));
 
        myLoader.addEventListener(Event.COMPLETE, loaded);
 
        function loaded (event: Event)
        {
                myxml = XML(event.target.data);
 
                var videoIndex: Number = myxml.video.length()-1;
                //trace(myxml, videoIndex);
                centerAlignAndPlay();
 
                //btn_left.addEventListener(MouseEvent.CLICK,prevVideo);
                //btn_right.addEventListener(MouseEvent.CLICK,nextVideo);
 
                nav.predButton.addEventListener(MouseEvent.CLICK,prevVideo);
                nav.nextButton.addEventListener(MouseEvent.CLICK,nextVideo);
 
                function prevVideo(event:MouseEvent)
                {
                        if (counter>0)
                        {
                                counter--;
                                centerAlignAndPlay();
                        }
                        else
                        {
                                counter = 3;
                                centerAlignAndPlay();
                        }
                }
 
                function nextVideo(event:MouseEvent)
                {
                        if (counter<videoIndex)
                        {
                                counter++;
                                centerAlignAndPlay();
                        }
                        else
                        {
                                counter = 0;
                                centerAlignAndPlay();
                        }
                }
        }
 
        function centerAlignAndPlay()
        {
                flvPlayer.source = myxml.video[counter].@movie;
                flvPlayer.width = myxml.video[counter].@width;
                flvPlayer.height = myxml.video[counter].@height;
                flvPlayer.x = 200;
                flvPlayer.y = 150;
                title.text = myxml.video[counter].@title;
        }
 
//=============================================//
 
nav.btn_play.addEventListener(MouseEvent.CLICK, playHandler);
nav.btn_pause.addEventListener(MouseEvent.CLICK, pauseHandler);
nav.btn_stop.addEventListener(MouseEvent.CLICK, stopHandler);
 
function playHandler(event:MouseEvent): void
{
        flvPlayer.play();
}
 
function pauseHandler(event:MouseEvent): void
{
        flvPlayer.pause();
}
 
function stopHandler(event:MouseEvent): void
{
        flvPlayer.pause();
        flvPlayer.seek(0);
}
 
/*
nav.btn_PlayPause.addEventListener(MouseEvent.CLICK, playPause);
 
function playPause(event:MouseEvent):void
{
  if (flvPlayer.play())
  {
          flvPlayer.pause();
          nav.btn_PlayPause.gotoAndStop(2);
 
    }
        else
        {
          flvPlayer.resume();
          nav.btn_PlayPause.gotoAndStop(1);
        }
 
}


Time and NetStream Time display:
Код AS3:

import flash.utils.Timer;
import flash.events.TimerEvent;
 
// Time and NetStream Time display (currently playing video time progress text and bar)
 
var t: Timer = new Timer(100);
t.addEventListener(TimerEvent.TIMER, onPlaying);
t.start();
 
function onPlaying (event: TimerEvent):void
{
        var detik: Number = Math.floor(net_s.time);
        var menit: Number = Math.floor(detik / 60);
 
        detik %= 60;
        menit %= 60;
 
        var display_detik: String = "";
        var display_menit: String = "";
 
        if (detik < 10)
        {
                display_detik = "0" + detik;
        }
        else
        {
                display_detik = "" + detik;
        }
 
        if (menit < 10)
        {
                display_menit = "0" + menit;
        }
        else
        {
                display_menit = "" + menit;
        }       
 
        nav.TimeDisplay.played_time.text = display_menit + ":" + display_detik;
 
        nav.SeekBar.slider_item.width = flvPlayer.time / object2.duration * 250;
 
        if (nav.TimeDisplay.duration_time.text == nav.TimeDisplay.played_time.text)
        {
                flvPlayer.pause();
                flvPlayer.seek(0);
        }
}

Duration Time:
Код AS3:

import flash.utils.Timer;
import flash.events.TimerEvent;
 
// Displaying Duration Time of Current playing video
var object2 = new Object;
 
function onMetaData (infoObject: Object): void
{
        object2 = infoObject;
        var duration_detik: Number = Math.floor(object2.duration);
        var duration_menit: Number = Math.floor(duration_detik / 60);
 
        duration_detik %= 60;
        duration_menit %= 60;
 
        var duration_detik_display: String = "";
        var duration_menit_display: String = "";
 
        if (duration_detik < 10)
        {
                duration_detik_display = "0" + duration_detik;
        }
        else
        {
                duration_detik_display = "" + duration_detik;
        }
 
        if (duration_menit < 10)
        {
                duration_menit_display = "0" + duration_menit;
        }
        else
        {
                duration_menit_display = "" + duration_menit;
        }
 
        nav.TimeDisplay.duration_time.text = duration_menit_display + ":" + duration_detik_display;
 
}

Volume:
Код AS3:

import flash.events.Event;
import flash.events.MouseEvent;
import flash.media.SoundTransform;
 
nav.volumeControl.volumeDownBtn.addEventListener(MouseEvent.CLICK, volumeDown);
nav.volumeControl.volumeUpBtn.addEventListener(MouseEvent.CLICK, volumeUp);
 
var volumeTransform:SoundTransform;
var volumeLevel = flvPlayer.soundTransform;
 
volumeLevel.volume = 1;
flvPlayer.soundTransform = volumeLevel;
nav.volumeControl.volume_info.text = "" + Math.round(volumeLevel.volume * 100) + "%";
 
function volumeDown(event:MouseEvent):void
{ 
                if (volumeLevel.volume > .1)
                {
                volumeLevel.volume -=0.1;
                        flvPlayer.soundTransform = volumeLevel;
                        nav.volumeControl.volume_info.text = "" + Math.round(volumeLevel.volume * 100) + "%";
        }
}
function volumeUp(event:MouseEvent):void
{
                if (volumeLevel.volume < 1)
                {
                volumeLevel.volume += 0.1;
                        flvPlayer.soundTransform = volumeLevel;
                        nav.volumeControl.volume_info.text = "" + Math.round(volumeLevel.volume * 100) + "%";
        }
}


Код:

<?xml version="1.0" encoding="utf-8"?>

<videos>
        <video movie="my_videos/barsuk!.flv" width="500" height="281" title="Барсук"/> 
        <video movie="my_videos/belka.flv" width="500" height="281" title="Белка"/>
        <video movie="my_videos/kot.flv" width="500" height="281" title="Кот"/>
       
</videos>


alexandrratush 11.06.2014 22:58

Цитата:

Доброго вечера! Помогите мне, пожалуйста. В чём тут ошибка. Почему некоторые кнопки не функционируют...
SeekBar, и время, и звук не работают... и кнопка плейстоп.
Почему не работают? Что говорят трейсы в обработчике кнопок?

mariamarfi 12.06.2014 00:31

Ошибок нет. А кнопки не работают... и преоладер.

alexandrratush 12.06.2014 01:01

Цитата:

Ошибок нет. А кнопки не работают... и преоладер.
Только что запускал, все работает. Только кнопка мигает. И про какой прелоадер вы говорите?

mariamarfi 12.06.2014 12:47

SeekBar - голубая линия должна измениться. Кнопки звука не действительна... - цифра не меняется, одна кнопка мигает - это PlayPause - неверно работает... Кнопки переходов работают

belv 12.06.2014 18:26

Вложений: 1
Вынес весь код в класс с таймлайна(Main.as), немного переписал. Суть думаю поймете.

mariamarfi 13.06.2014 18:59

belv, Спасибо большое! Сработало


Часовой пояс GMT +4, время: 05:13.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.