Вниз
Скачать: CL | DM;

Windows.Beep   Найти похожие ветки 

 
vayrus   (2005-04-14 17:36) [0]

Дано: форма с Button1 и Memo1.
В Memo1 имеется n-е количество строк "Windows.Beep (Tone; Duration)"
с различными значениями Tone и Duration.
Вопрос: как при нажатии на кнопку Button1 проиграть последовательно
все строки в Memo1 (должна получится мелодия)?
Примечание: Windows.Beep - это процедура для извлечения звука
из динамика ПК.


 
Тестировщица ©   (2005-04-14 17:50) [1]

А зачем такие сложности? Почему просто не записать в мемо строки вида Tone; Duration ?


 
BFG9k   (2005-04-14 17:53) [2]

Боюсь, не успею ответить - перекинут в media ;-)


 
Тестировщица ©   (2005-04-14 18:04) [3]

"В лоб" задача решается достаточно просто. Вот пример решения. Имхо, возможностей для упрощения и оптимизации - море -)

procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
   Tone,Duration:cardinal;
begin
   for i:=0 to Memo1.Lines.Count-1 do
   begin
       Tone:=StrToInt(Copy(Memo1.Lines[i],1,pos(";",Memo1.Lines[i])-1));
       Duration:=StrToInt(Copy(Memo1.Lines[i],pos(";",Memo1.Lines[i])+1,Length(Memo1.Lines[i])-pos(";",Memo1.Lines[i])));
       Windows.Beep(Tone,Duration);
   end;
end;




Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.022 c
14-1122576218
Cerberus
2005-07-28 22:43
2005.08.21
Cоревнования по кодингу.


3-1121004029
Ling
2005-07-10 18:00
2005.08.21
Zeos и запрс из нескольких частей


4-1119846375
leonidus
2005-06-27 08:26
2005.08.21
Как отследить двойное нажатие клавиши Shift


11-1105541859
Help
2005-01-12 17:57
2005.08.21
Есть аналог Form1.Activate?


1-1122844342
ronyn
2005-08-01 01:12
2005.08.21
Срок работы DEMO




   Наверх