Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.09.2009, 11:30   #1
.Phoenix
Форумчанин
 
Регистрация: 02.04.2009
Сообщений: 235
По умолчанию Самодельный будильник

Доброго времени суток.
Решил написать свой собственный будильник. С таймером разобрался, но при подсчёте времени работает во время программы, но после того как прописал код на открытие музыкального файла mp3 формата, сразу при запуске Delphi посылает меня очень далеко.
Вот мой код

procedure TForm1.IdleProc(sender:TObject; var done:boolean);
begin
Label1.Caption:=TimeToStr(Time);
if TimeToStr(Time)='11:15:45' then
MediaPlayer1.FileName:='Адрес файла.mp3';
MediaPlayer1.Open;
MediaPlayer1.Play;
done:=false;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
application.OnIdle:=IdleProc
end;
Скорее всего я что-то сделал не правильно.
Всё гениальное - просто!
.Phoenix вне форума Ответить с цитированием
Старый 19.09.2009, 11:42   #2
L_M
Форумчанин Подтвердите свой е-майл
 
Регистрация: 25.02.2008
Сообщений: 289
По умолчанию

Цитата:
Сообщение от .Phoenix Посмотреть сообщение

procedure TForm1.FormCreate(Sender: TObject);
begin
application.OnIdle:=IdleProc
end;
А как вот это понимать? Что тут делается?
Упс...
L_M вне форума Ответить с цитированием
Старый 19.09.2009, 11:50   #3
L_M
Форумчанин Подтвердите свой е-майл
 
Регистрация: 25.02.2008
Сообщений: 289
По умолчанию

Кроме того вероятно необходимо дописать begin и end, чтобы файл открывался и воспроизводился тоже только если наступило время.
Цитата:
Сообщение от .Phoenix Посмотреть сообщение
procedure TForm1.IdleProc(sender:TObject; var done:boolean);
begin
Label1.Caption:=TimeToStr(Time);
if TimeToStr(Time)='11:15:45' then begin
MediaPlayer1.FileName:='Адрес файла.mp3';
MediaPlayer1.Open;
MediaPlayer1.Play;
done:=false;
end;
end;
А у тебя получалось, что имя файла не задано, а ты его открываешь.
Упс...
L_M вне форума Ответить с цитированием
Старый 19.09.2009, 12:34   #4
.Phoenix
Форумчанин
 
Регистрация: 02.04.2009
Сообщений: 235
По умолчанию

L_M Спасибо за совет и вправду, после того как добавил begin...end программа пошла.
Цитата:
А у тебя получалось, что имя файла не задано, а ты его открываешь.
Пока над эти трюком не работал. Я думаю компоненту MediaPlayer небходимо знать имя файла, которое ему надо открыть. Не зная имени файла как же его откроет....Хотя может профессионалы знают как такое сделать...Я с Мультимедией только начинаю работать в Delphi
Всё гениальное - просто!

Последний раз редактировалось .Phoenix; 19.09.2009 в 12:39.
.Phoenix вне форума Ответить с цитированием
Старый 20.09.2009, 10:10   #5
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

я бы так написал:
Код:
Label1.Caption:=TimeToStr(Time);
MediaPlayer1.FileName:='Адрес файла.mp3';
if TimeToStr(Time)='11:15:45' then begin
                                                  MediaPlayer1.Open;
                                                  MediaPlayer1.Play;
                                                  done:=false;
                                                 end;
имя файла задаем всегда.
а если нужно то открываем его и воспроизводим.
Цитата:
Пока над эти трюком не работал. Я думаю компоненту MediaPlayer небходимо знать имя файла, которое ему надо открыть. Не зная имени файла как же его откроет....Хотя может профессионалы знают как такое сделать...
смысл этих слов от меня ускользнул...
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 20.09.2009, 11:38   #6
.Phoenix
Форумчанин
 
Регистрация: 02.04.2009
Сообщений: 235
По умолчанию

Цитата:
Пока над эти трюком не работал. Я думаю компоненту MediaPlayer небходимо знать имя файла, которое ему надо открыть. Не зная имени файла как же его откроет....Хотя может профессионалы знают как такое сделать...
я тут забыл напечатать "не "
Цитата:
Пока над эти трюком не работал. Я думаю компоненту MediaPlayer небходимо знать имя файла, которое ему надо открыть. Не зная имени файла как же его НЕ откроет....Хотя может профессионалы знают как такое сделать...
Всё гениальное - просто!
.Phoenix вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Будильник RealSHELS Свободное общение 6 30.05.2008 21:40
Собственная компонента: будильник redred Компоненты Delphi 1 13.05.2008 06:48
Будильник DeDoK Общие вопросы Delphi 7 21.02.2008 10:02
Помогите cделать будильник в Delphi Ivanich Помощь студентам 6 12.12.2007 17:22
Оцените будильник Viteef Софт 11 15.06.2007 17:57