![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
beep [D5]
Юлиана © (2002-07-12 20:54:00)подскажите пожалуйста как выдать стандартный звуковой сигнал(как в досе).- у процедуры beep упразднили параметры, а мне необходима длительность и тон,а messagebeep выдает стандартный, но виндо-й сигнал
drpass (2002-07-12 23:33:00) [1]
> mukha ©
Да нет, девушка же написала, что не может воспользоваться стандартной функцией Windows, так как та переопределена в Delphi. Я просто показал ей, как ее вызвать
mukha (2002-07-12 23:12:00) [2]drpass © (12.07.02 23:07)
Сигнал то нужен не Windows, а из сист.динамика.
drpass (2002-07-12 23:07:00) [3]Только пришел, и сразу вижу конкретное извращение :)
Почему не написать вместо всей этой лабуды просто windows.beep(tone, delay)???
Anatoly Podgoretsky (2002-07-12 21:27:00) [4]Ты не указала ОС, поэтому возможно совет окажется бесполезным
Юлиана (2002-07-12 21:01:00) [5]спасибо огромное
LENIN INC (2002-07-12 20:58:00) [6]
type
procedure Beep(Tone: Word; Delay: Integer);
//Функция подачи сигнала системным спикером
//Tone - тональность сигнала
//Delay - задержка сигнала
procedure TForm1.Beep(Tone: Word; Delay: Integer);
begin
asm
mov al, 0b6H
out 43H, al
mov ax,Tone
out 42h,al
ror ax,8
out 42h,al
in al, 61H
or al, 03H
out 61H, al
end;
sleep(Delay);
asm
in al, 61H
and al, 0fcH
out 61H, al
end;
end;
//Вызов функции...
procedure TForm1.Button1Click(Sender: TObject);
begin
Beep(1000,1000);
end;