Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 15.05.2011, 02:42
kabeshova вне форума Посмотреть профиль Отправить личное сообщение для kabeshova Найти все сообщения от kabeshova
  № 1  
Ответить с цитированием
kabeshova

Регистрация: May 2011
Сообщений: 15
Attention плеер с подгрузкой XML (as3)

Здравствуйте,
сделан обычные плеер с кнопками плей, стоп, пауза, след и пред аудиозапись с подгрузкой файлов из XML. Но тем неменее работает все кроме след , пред, и вывод названия композиции.
делала плеер по уроку , на этом сайте
помогите, разобраться


(в этом архиве нет музыки , тк сайт не позволяет грузить больше мегабайта, а так там m1.mp3, m2.mp3, m3.mp3, m4.mp3, m5.mp3)
Вложения
Тип файла: rar sound1.rar (6.9 Кб, 50 просмотров)

Старый 15.05.2011, 12:59
tsarapkabel вне форума Посмотреть профиль Отправить личное сообщение для tsarapkabel Найти все сообщения от tsarapkabel
  № 2  
Ответить с цитированием
tsarapkabel
 
Аватар для tsarapkabel

Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
Код AS3:
function name(event:Event):void {
    ...
}
"name" — зарезервированное имя, надо другое.


Код AS3:
loader.addEventListener(Event.COMPLETE, xml);
В данном случае надо ловить INIT.
__________________
Нормально делай — нормально будет!

Старый 16.05.2011, 17:14
kabeshova вне форума Посмотреть профиль Отправить личное сообщение для kabeshova Найти все сообщения от kabeshova
  № 3  
Ответить с цитированием
kabeshova

Регистрация: May 2011
Сообщений: 15
я в этом деле не знаток
и мне это ничего не говорит(
кроме как поменять имя функции

Старый 16.05.2011, 18:10
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 4  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Код AS3:
loader.addEventListener(Event.INIT, xml);
__________________
тут я

Старый 16.05.2011, 18:32
tsarapkabel вне форума Посмотреть профиль Отправить личное сообщение для tsarapkabel Найти все сообщения от tsarapkabel
  № 5  
Ответить с цитированием
tsarapkabel
 
Аватар для tsarapkabel

Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
Если вкратце, то я закомментировал функцию name (ибо она всё равно будет косячить):
Код AS3:
//name
/* function name(event:Event):void {
    name_txt.text=(track+1)+"/"+playlist.music.length+"  "+soundObj.id3.artist + " - " + soundObj.id3.songName;
}*/
И, как уже сказал КорДум, поменял слушаемое событие loadera.
Теперь работает play, pause и stop.

Если не вкратце, то надо ещё навесить слушателей на prev_btn, next_btn, раскомментировать функции prevTrack, nextTrack, инициализировать переменную track (из-за отсутствия которой как раз и не сработает закомментированная функция) и дополнить код функцией PlaySound(), которую лучше переименовать хотя бы в playSound().
__________________
Нормально делай — нормально будет!

Старый 17.05.2011, 00:24
kabeshova вне форума Посмотреть профиль Отправить личное сообщение для kabeshova Найти все сообщения от kabeshova
  № 6  
Ответить с цитированием
kabeshova

Регистрация: May 2011
Сообщений: 15
все так сделала
он пишет что некорректное использование аргумента start play()(я переименовала функцию playSound)
Код AS3:
next_btn.addEventListener(MouseEvent.CLICK, nextTrack);
prev_btn.addEventListener(MouseEvent.CLICK, prevTrack);
	//Следующий трек
function nextTrack(event:MouseEvent):void{ 
		for(var track:int = 0; track < playlist.music.scr.length();)
		if((track+1)<arrayUrl.length){ 
		track++;
	} else {
		track = 0;
	}
	try { 
		soundCha.stop();
		soundObj.close();
	} catch(e:Error){
		soundCha.stop(); 
	}
	startPlay();
}
 
	//предыдущий
function prevTrack(event:MouseEvent):void{
		for(var track:int = 0; track < playlist.music.scr.length();)
		if(track!=0){
		track--;
	} else {
		track = arrayUrl.length-1;
	}
	try {
		soundCha.stop();
		soundObj.close();
	} catch(e:Error){
		soundCha.stop();
	}
	startPlay();
}
 
 
function startPlay(event:MouseEvent):void{
	soundCha=soundObj.play(setPosition);
	pause_btn.addEventListener(MouseEvent.CLICK,stopPlay);
	stop_btn.addEventListener(MouseEvent.CLICK,fullStop);
	play_btn.removeEventListener(MouseEvent.CLICK, startPlay);
}

вот сам xml
[code]<XML>
<music>
<src>m1.mp3</src>
<author>Yann Tiersen</author>
<song>J'y suis jamais alle</song>
</music>
<music>
<src>m2.mp3</src>
<author>Terry S. Taylor</author>
<song>Operator Plays A Little Pingpong</song>
</music>
<music>
<src>m3.mp3</src>
<author>John Williams</author>
<song>Sayuris Theme And End Credits</song>
</music>
<music>
<src>m4.mp3</src>
<author>Eddie Murphie</author>
<song>I'm A Believer (reprise)</song>
</music>
<music>
<src>m5.mp3</src>
<author>Meiko Kaji</author>
<song>The Flower Of Carnage</song>
</music>
</XML>[code]

Старый 17.05.2011, 00:40
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 7  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Ну Вы же не передаете в startPlay() никаких параметров, а она требует объект класса MouseEvent.
__________________
Reality.getBounds(this);

Старый 17.05.2011, 01:03
kabeshova вне форума Посмотреть профиль Отправить личное сообщение для kabeshova Найти все сообщения от kabeshova
  № 8  
Ответить с цитированием
kabeshova

Регистрация: May 2011
Сообщений: 15
АААААА я не понимаю. там в функции startPlay() нужно дописать какойто чтото типо mouseEvent.___?
что?

Старый 17.05.2011, 01:32
tsarapkabel вне форума Посмотреть профиль Отправить личное сообщение для tsarapkabel Найти все сообщения от tsarapkabel
  № 9  
Ответить с цитированием
tsarapkabel
 
Аватар для tsarapkabel

Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
Код AS3:
function startPlay(event:MouseEvent = null):void {
__________________
Нормально делай — нормально будет!

Старый 17.05.2011, 20:26
kabeshova вне форума Посмотреть профиль Отправить личное сообщение для kabeshova Найти все сообщения от kabeshova
  № 10  
Ответить с цитированием
kabeshova

Регистрация: May 2011
Сообщений: 15
вот что он мне пишет

TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
at pleer_fla::MainTimeline/nextTrack()

при такой функции
Код AS3:
//Следующий трек
function nextTrack(event:MouseEvent):void{ 
		for(var track:int = 0; track < playlist.music.scr.length();)
		if((track+1)<arrayUrl.length){ 
		track++;
	} else {
		track = 0;
	}
	try { 
		soundCha.stop();
		soundObj.close();
	} catch(e:Error){
		soundCha.stop(); 
	}
	startPlay();
}

Я вобще не понимаю что не так.
Мне еще завтра эту работ сдавать, если не сложно кто сможет помочь исправить ошибку.
Вложения
Тип файла: rar sound.rar (13.6 Кб, 54 просмотров)

Создать новую тему Ответ Часовой пояс GMT +4, время: 22:36.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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