Суббота, 16.12.2017, 21:35
Приветствую Вас Гость

Не ошибается тот, кто ничего не делает.
Но и ничего не делать - ошибка.

Эмиль Кроткий

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Форум » Delphi » Создание mp3 плеера на Delphi » следующий трек
следующий трек
YouMustSuckДата: Воскресенье, 06.10.2013, 19:23 | Сообщение # 1
Рядовой
Группа: Пользователи
Сообщений: 3
Репутация: 0
Статус: Offline
сделал отрисовку в ListBox'e и в нем(ListBox'e0) добавилась вторая строка, из-за которой перестало работать автовоспроизведение след трека, помогите исправить
ссылка на проект: http://rghost.ru/49194272
 
xaramamburuДата: Понедельник, 07.10.2013, 17:08 | Сообщение # 2
Полковник
Группа: Администраторы
Сообщений: 240
Репутация: 26
Статус: Offline
Хотите верьте хотите нет, но отрисовка не может влиять на воспроизведение трека, это всего лишь накладка на Item ListBox'a , а само внутренне содержание ListBox'a при этом не изменяется. Судя по исходникам проблема у вас с переменной, отвечающей за хранения текущей песни, в моем случае это была переменная I, которая была объявлена глобально, а у вас она объявлена локально, да еще и используется почти во всех процедурах. А локальные переменные не сохраняют своих значении, и при повторном вызове инициализируются заново. Переход на следующую песню происходит по таймеру, поэтому ваша I при каждом обращении к таймеру должна обнуляться (правда  почему у вас она равна 1 в место 0 я так и не смог понять sad ), затем к ней прибавляется 1 'inc(I)' и в итоге получается 2, что соответствует 3 треку в плейлисте, т.к. нумерация идет с нуля. И так происходит при каждом обращении к таймеру при попытке сменить трек на следующий. Для исправления сделайте эту переменную глобальной, а еще лучше для хранения текущей песни возьмите другую переменную и сделайте ее глобальной, что бы не было путаницы. smile
 
YouMustSuckДата: Понедельник, 07.10.2013, 20:23 | Сообщение # 3
Рядовой
Группа: Пользователи
Сообщений: 3
Репутация: 0
Статус: Offline
да я уже разобрался, проблема была в функции получения частоты дискретизации трека, исправил ее и все стало работать

Добавлено (07.10.2013, 19:56)
---------------------------------------------
как сделать так, чтобы песня, которая играет выделялась определенным цветом? за играющую песню у меня отвечает переменная i

Добавлено (07.10.2013, 20:23)
---------------------------------------------
разобрался

 
Форум » Delphi » Создание mp3 плеера на Delphi » следующий трек
Страница 1 из 11
Поиск:


Copyright MyCorp © 2017Конструктор сайтов - uCoz