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

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

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

Регистрация: Apr 2009
Сообщений: 12
По умолчанию Проблемы условного перехода

Уважаемые господа!
Я начинающий программист. Попробовал написать самый простой mp3-плеер. Я понимаю, что сегодня в Сети исходников полно, мне важно самому.

Код моего плеера:
Код:
var tune1:Sound = new Sound();
var tune2:Sound = new Sound();
var tune3:Sound = new Sound();
var tune4:Sound = new Sound();
tune1.attachSound ("song1");
tune2.attachSound ("song2");
tune3.attachSound ("song3");
tune4.attachSound ("song4");
stop();
track=1;

play_mc.onPress = function() {
	if (track==1) {
	tune1.start();
}	else	{
	if (track==2) {
		tune2.start();
	}	else	{
		if (track==3) {
			tune3.start();
		}	else	{
			tune4.start();
			}
		}
	}
}

stop_mc.onPress = function() {
	tune1.stop();
	tune2.stop();
	tune3.stop();
	tune4.stop();
}

back_mc.onPress = function() {
	if (track==1) {
		track=4;
		tune1.stop();
		tune4.start();
	}
	if (track==2) {
		track--;
		tune2.stop();
		tune1.start();
	}
	if (track==3) {
		track--;
		tune3.stop();
		tune2.start();
	}
	if (track==4) {
		track--;
		tune4.stop();
		tune3.start();
	}
}

next_mc.onPress = function() {
	if (track==1) {
		track++;
		tune1.stop();
		tune2.start();
	}
	if (track==2) {
		track++;
		tune2.stop();
		tune3.start();
	}
	if (track==3) {
		track++;
		tune3.stop();
		tune4.start();
	}
	if (track==4) {
		track=1;
		tune4.stop();
		tune1.start();
	}
}
Проблема: кнопка Вперед не переходит на другие треки, а лишь снова начинает первый, а кнопка Назад вместо четвертого трека, запускает третий (четвертый при этом проиграть невозможно).
Версия программы: CS4
Для аудио-файлов атрибут "Экспорт для ActionScript" активирован, идентификаторы заданы правильно. Имена экземпляров для кнопок тоже верны.
Не знаю, нужно ли прикладывать файл. Если нужно будет - приложу.

Большое спасибо за любую помощь.

Старый 30.04.2009, 01:23
Kuruki вне форума Посмотреть профиль Отправить личное сообщение для Kuruki Найти все сообщения от Kuruki
  № 2  
Ответить с цитированием
Kuruki

Регистрация: Jan 2008
Сообщений: 669
Нужно использовать оператор return для выхода из функции, когда выполнение последующего кода в ней не требуется, а в вашем случае даже приводит к не желательным результатам. После первого блока if track увеличивается и выполняется условие второго блока, который в свою очередь опять увеличивает track и т.д....

Старый 30.04.2009, 01:40
LeonidRoz вне форума Посмотреть профиль Отправить личное сообщение для LeonidRoz Найти все сообщения от LeonidRoz
  № 3  
Ответить с цитированием
LeonidRoz

Регистрация: Apr 2009
Сообщений: 12
Спасибо большое! Помогло!

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

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

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


 


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


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