Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 30.03.2008, 11:53   #1
delphin100
Он лайн
Форумчанин
 
Аватар для delphin100
 
Регистрация: 26.09.2007
Адрес: Н. Новгород
Сообщений: 173
Репутация: 11
Вопрос PlaySound

При воспроизведении мелодии форма не отвечает как этого избежать чтоб мелодия играла и ничего не тормозило.
Пример моего использования:
procedure TForm1.Timer2Timer(Sender: TObject);
begin
showwindow(application.Handle,sw_hi de);
if fileexists('backmusic.wav') then
begin
playsound(pchar('backmusic.wav'),0, snd_nostop);
Timer2.Enabled:=false;
end;
end;
delphin100 вне форума   Ответить с цитированием
Старый 30.03.2008, 12:21   #2
SunKnight
Профессионал
 
Аватар для SunKnight
 
Регистрация: 15.12.2007
Адрес: Украина, Донецкая обл., г. Краматорск
Сообщений: 1,435
Репутация: 546
По умолчанию

Код:

procedure TForm1.FormCreate(Sender: TObject);
var MMplay:TMediaPlayer;
begin
        MMplay:=TMediaPlayer.Create(application);
        with MMplay do
        begin
                CreateParented(Form1.Handle);
                FileName:='D:\music\other\et.wav';
                Open;
                Play;
        end;
end;

__________________
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.

Последний раз редактировалось SunKnight; 30.03.2008 в 14:31.
SunKnight вне форума   Ответить с цитированием
Старый 30.03.2008, 12:49   #3
delphin100
Он лайн
Форумчанин
 
Аватар для delphin100
 
Регистрация: 26.09.2007
Адрес: Н. Новгород
Сообщений: 173
Репутация: 11
Сообщение

медиа плеер я на форму поставил и визибл убрал.
теперь ошибка
delphin100 вне форума   Ответить с цитированием
Старый 30.03.2008, 13:23   #4
SunKnight
Профессионал
 
Аватар для SunKnight
 
Регистрация: 15.12.2007
Адрес: Украина, Донецкая обл., г. Краматорск
Сообщений: 1,435
Репутация: 546
По умолчанию

Ненужно выкидывать компонент на форму, так как он создается
MMplay:=TMediaPlayer.Create(applica tion);
удалите компонент с формы.
__________________
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.
SunKnight вне форума   Ответить с цитированием
Старый 30.03.2008, 14:18   #5
delphin100
Он лайн
Форумчанин
 
Аватар для delphin100
 
Регистрация: 26.09.2007
Адрес: Н. Новгород
Сообщений: 173
Репутация: 11
По умолчанию

Спасибо Попробую
delphin100 вне форума   Ответить с цитированием
Старый 30.03.2008, 14:33   #6
delphin100
Он лайн
Форумчанин
 
Аватар для delphin100
 
Регистрация: 26.09.2007
Адрес: Н. Новгород
Сообщений: 173
Репутация: 11
По умолчанию

Всё-равно таже ошибка
delphin100 вне форума   Ответить с цитированием
Старый 30.03.2008, 14:45   #7
SunKnight
Профессионал
 
Аватар для SunKnight
 
Регистрация: 15.12.2007
Адрес: Украина, Донецкая обл., г. Краматорск
Сообщений: 1,435
Репутация: 546
По умолчанию

Код:

uses MPlayer;
.......................
procedure TForm1.Button1Click(Sender: TObject);
var MMplay:TMediaPlayer;
begin
        MMplay:=TMediaPlayer.Create(application);
        with MMplay do
        begin
                CreateParented(Form1.Handle); // укажи хандл своей формы
                FileName:='D:\music\other\et.wav';
                MMplay.Open;
                Play;
        end;
end;

Все работает. (Без компонента.) С медиаплеером бывает проблема что выскакивает такая ошибка, создайте новый проэкт и проэксперементируйте.
__________________
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.

Последний раз редактировалось SunKnight; 30.03.2008 в 14:47.
SunKnight вне форума   Ответить с цитированием
Старый 30.03.2008, 15:30   #8
delphin100
Он лайн
Форумчанин
 
Аватар для delphin100
 
Регистрация: 26.09.2007
Адрес: Н. Новгород
Сообщений: 173
Репутация: 11
По умолчанию

всё спасибо просто у меня 2 раза форма создавалась один раз в проджекте один раз в другой форме
delphin100 вне форума   Ответить с цитированием
Старый 30.03.2008, 15:32   #9
delphin100
Он лайн
Форумчанин
 
Аватар для delphin100
 
Регистрация: 26.09.2007
Адрес: Н. Новгород
Сообщений: 173
Репутация: 11
По умолчанию

другой вопрос как с плеером циклически воспроизвести
delphin100 вне форума   Ответить с цитированием
Старый 31.03.2008, 08:40   #10
SERG1980
Профессионал
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,813
Репутация: 717
По умолчанию

Const SND_SYNC = &H0 ' Файл воспроизводится синхронно
' и функция не возвращает управление до окончания воспроизведения

Const SND_ASYNC = &H1 ' Файл воспроизводится асинхронно
' и функция возвращает управление сразу же после
' начала воспроизведения. Для того, чтобы
' прервать воспроизведение, необходимо вызвать
' функцию sndPlaySound с именем файла, равным ""

Const SND_NODEFAULT = &H2 ' Указывает на то, что если файл,
' заданный первым параметром, не найден, то не должен
' воспроизводиться файл по умолчанию

Const SND_MEMORY = &H4 ' Указывает на то, что имя файла
' соответствует WAV-файлу, находящемуся в памяти,
' например, загруженному из ресурса

Const SND_LOOP = &H8 ' Файл воспроизводится от начала до
' конца бесконечное число раз до тех пор, пока не
' вызвана функцию sndPlaySound с именем файла, равным "".
' При таком воспроизведении должен быть указан и флаг
' SND_ASYNC

Const SND_NOSTOP = &H10 ' Функция возвращает FALSE, если
' в момент ее вызова уже воспроизводится какой-нибудь файл

' Соответственно, реальное обращение
' к функции sndPlaySound может выглядеть примерно так

Result = sndPlaySound("c:\wav\demo.wav", SDN_ASYNC or SND_LOOP)
SERG1980 вне форума   Ответить с цитированием
Ответ

Опции темы

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

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

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PlaySound() Артэс Общие вопросы C/C++ 7 19.09.2010 20:18
PlaySound для 2 файлов JoanM Мультимедиа в Delphi 12 25.09.2008 17:05


21:07.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru