Модераторы: Snowy, Alexeis, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> MediaPlayer, Пожалуйста помогите! 
:(
    Опции темы
SoftLines
  Дата 11.7.2004, 20:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


ЗАБАНЕН
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 6.7.2004

Репутация: нет
Всего: 1



Здравствуйте, помогите мне пожалуйста сделать программу! Короче всё я сделал добавление в PlayList музыку, пути к ней, так вот вопрос:

Как сделать, чтобы MediaPlayer проигрывал музыку по очереди из ListBox1, прошу помогите если поможете, то ещё пожалуйста помогите сделать так, чтобы при добовление он добовлял только название файла без адреса, например
"D:\Music\eminem - lose your self.mp3" а надо только
"Eminem - Lose Your Selft"
Зарание говорю всем спасибо! biggrin.gif
PM MAIL   Вверх
Albinos_x
Дата 11.7.2004, 21:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 1
Всего: 108



Делай массив или типа записи, а в листбокс загружай только имена файлов, для этого есть АПИ функция


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
p0s0l
Дата 11.7.2004, 22:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Г-н Посол
****


Профиль
Группа: Экс. модератор
Сообщений: 3668
Регистрация: 13.7.2003
Где: 58°38' с.ш. 4 9°41' в.д.

Репутация: 16
Всего: 112



Тогда нужно где-то еще хранить полные пути к файлам (можно сделать через Items.Objects), а можно переписать OnDrawItem, чтобы тот обрезал путь.
Для поочередного проигрывания используй OnNotify (не проверял, но взято из DRKB):
Код
procedure TForm1.MediaPlayer1Notify(Sender: TObject);
begin with MediaPlayer1 do
   if NotifyValue = nvSuccessful then
     begin
       Notify := True;
// открываешь следующий файл из ListBox'а
       Play;
     end;
end;




--------------------
С уважением, г-н Посол.
PM   Вверх
SoftLines
Дата 11.7.2004, 23:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


ЗАБАНЕН
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 6.7.2004

Репутация: нет
Всего: 1



Так вот если у меня пути в base.ini он ладно загружает при нажатие в ListBox в невидемое поле и проигравает из него, а мне надо, чтоб он автоматом после проигрывания файла следующий начал проигрывать
PM MAIL   Вверх
Alkash
Дата 12.7.2004, 01:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


коллекционер жизни
**


Профиль
Группа: Участник
Сообщений: 516
Регистрация: 5.7.2004
Где: /

Репутация: нет
Всего: нет



Беги на игроманию и в разделе журнальных публикаци ищи стаью - Медиа-Комбайн.Там всё доходчиво.


--------------------
Подпись >> /dev/null
PM MAIL ICQ MSN   Вверх
SoftLines
Дата 12.7.2004, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


ЗАБАНЕН
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 6.7.2004

Репутация: нет
Всего: 1



Там я не нашёл, а ответа на свой вопрос в этом форуме не получил!
PM MAIL   Вверх
Pakshin A. S.
Дата 12.7.2004, 09:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: нет
Всего: 61



Цитата

он автоматом после проигрывания файла следующий начал проигрывать

Где-то я уже это слышал...пользуйся поиском!!!
Добавлено @ 09:56
А вот и подходящая статья:
TMediaPlayer
PM   Вверх
SoftLines
Дата 12.7.2004, 09:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


ЗАБАНЕН
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 6.7.2004

Репутация: нет
Всего: 1



Спасибо, но я всё обыскал мне блин не найти! sad.gif
PM MAIL   Вверх
Pakshin A. S.
Дата 12.7.2004, 10:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: нет
Всего: 61



Что? В предложенной статье разве не то обсуждается?!
Цитата

Есть динамический массив a, который содержит имена файлов (1.avi, 2.avi, ..... n.avi).
Как заставить TMediaPlayer проиграть все файлы по очереди?
Заранее спасибо!

На твой случай не похоже?
Цитата

Так вот если у меня пути в base.ini он ладно загружает при нажатие в ListBox в невидемое поле и проигравает из него, а мне надо, чтоб он автоматом после проигрывания файла следующий начал проигрывать


Главно - понять смысл, а потом уже подогнать к своему приложению.

PM   Вверх
SoftLines
  Дата 12.7.2004, 10:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


ЗАБАНЕН
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 6.7.2004

Репутация: нет
Всего: 1



Короче ещё раз, он загружает в поле невидемое, и какбы после проигрывания 1 файла он должен переключить следующую запись в ListBox1 тем самым загрузить адрес в поле, а плеер должен проиграть следующий файл! sad.gif

Это сообщение отредактировал(а) SoftLines - 12.7.2004, 10:27
PM MAIL   Вверх
Pakshin A. S.
Дата 12.7.2004, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: нет
Всего: 61



Вот кое что набросал:
Код

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
 MPlayer, ExtCtrls, StdCtrls;

type
 TForm1 = class(TForm)
   MediaPlayer1: TMediaPlayer;
   Timer1: TTimer;  // Interval = 1; Enabled = False
   ListBox1: TListBox;
   ListBox2: TListBox;
   procedure Timer1Timer(Sender: TObject);
   procedure FormShow(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.DFM}

var
id:integer;

procedure TForm1.Timer1Timer(Sender: TObject);
var
i:integer;
begin
if (MediaPlayer1.NotifyValue = nvSuccessful) and (MediaPlayer1.Mode=mpStopped) and (id < ListBox1.Items.Count)
 then
  begin
   {Осуществляем переход на другую песню}
   MediaPlayer1.Close;
   MediaPlayer1.FileName:=ListBox1.Items[id];//спрятанный список с именами файлов
   inc(id);
   MediaPlayer1.Open;
   MediaPlayer1.Play;
   {Осуществляем визуальный переход}
   i:=ListBox2.ItemIndex;
   ListBox2.ItemIndex:=i+1;
  end;
end;

procedure TForm1.FormShow(Sender: TObject);
begin
id:=1;
MediaPlayer1.FileName:=ListBox1.Items[0];
MediaPlayer1.Open;
MediaPlayer1.Play;
Timer1.Enabled:=True;
ListBox2.SetFocus;
ListBox2.ItemIndex:=0;
end;

end.

Добавлено @ 10:29
За точность if'а не ручаюсь. К вечеру будет точнее.
PM   Вверх
SoftLines
Дата 12.7.2004, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


ЗАБАНЕН
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 6.7.2004

Репутация: нет
Всего: 1



А спрятанный тот который ListBox1.Items[id]?
PM MAIL   Вверх
Pakshin A. S.
Дата 12.7.2004, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: нет
Всего: 61



А что с ним?

P. S.
С if'ом всё в полном порядке.
PM   Вверх
SoftLines
Дата 12.7.2004, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


ЗАБАНЕН
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 6.7.2004

Репутация: нет
Всего: 1



Нет чтоб разобраться! И там в нём похоже хранятся пути к файлам да? sad.gif
PM MAIL   Вверх
Albinos_x
Дата 12.7.2004, 11:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 1
Всего: 108



У мелиаплеера есть событие

procedure TForm8.MediaPlayer1Notify(Sender: TObject);

по нему можно отследить, окончание проигрывания файла


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.1455 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.