|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Воспроизведение звука из БД
Подскажите пожалуйста, как мне воспроизвести звук. В таблице SOUND есть поля: ID; Adres; Time_play. Time_play тип Time хранит время, через которое должен воспроизвестись звук. При открытии формы ALARM все звуки воспроизводятся автоматически, согласно Time_play. Прошу вашей помощи.
|
#2
|
||||
|
||||
Звук можно воспроизвести через функцию:
Код:
function PlaySound(pszSound: PWideChar; hmod: HMODULE; fdwSound: DWORD): BOOL; Пишу программы за еду. __________________ |
#3
|
|||
|
|||
Так вот и загвоздка. Как считать из БД? Через IBQuery? Напишите пожалуйста примерный код.
|
#4
|
||||
|
||||
Как работать с BLOB полями на форумах писали очень много раз. Мне же писать пример или искать лень
Пишу программы за еду. __________________ |
#5
|
|||
|
|||
Искать не лень. У меня времени нет разбираться. Ещё и базу редактировать. Завтра уже работу сдавать. А можно считывать путь к файлу из DBGrid и воспроизводить когда время работы формы (при нажатии на Button) равно полю Time_Play в DBGrid и переходить на следующую запись?
|
#6
|
|||
|
|||
Получается воспроизвести только первый файл и без учёта времени. Помогите доработать пожалуйста!!!
Код:
procedure TFormTrevoga.FormActivate(Sender: TObject); var D1, D2, N: TDateTime; X:string; I:integer; T:TTime; begin I:=DBGridKom.DataSource.DataSet.RecordCount; X:=DBGridKom.DataSource.DataSet.FieldByName('ADRES_SOUND').AsString; T:=DBGridKom.DataSource.DataSet.FieldByName('TIME_PLAY').AsDateTime; N:=Now; D1:=VarToDateTime(FormTrevoga.Edit1.Text);//Дата открытия формы D2:=VarToDateTime(FormTrevoga.Edit2.Text);//Время открытия формы ShowMessage('Количество строк: ' +IntToStr(I)+#13+ 'Адрес: ' +X +#13+ 'Время: ' +TimeToStr(T)); MCISendString(pchar('play ' + (X)), nil, 0, handle); end; |
#7
|
||||
|
||||
Сам по себе DBGrid не хранит данные, он всего лишь отображает их из Dataset и позволяет их редактировать. Можно путь к файлу брать из набора данных.
Пишу программы за еду. __________________ |
#8
|
|||
|
|||
Я это уже понял что через DataSet (смотри выше). Как мне выполнить задуманное? Я понимаю что надо использовать циклы.
|