Звук через внутренний динамик
Хованский Ян
http://vbkoders.net.ru/
http://vbkoders.net.ru/
В этой статье я расскажу вам о том, как выдавать звуковой сигнал через внутренний динамик. Для этого мы воспользуемся API функцией Beep. Ну что, перейдём к делу:
1. Создайте новый проект.
2. На созданную вместе с проектом форму добавьте две метки (lbl1, lbl2) , две горизонтальные полосы прокрутки (srlChastota и srlTime) и одну кнопку (cmdGen):
| Имя элемента управления: | Свойство: | Значение: |
|---|---|---|
| lbl1 | Caption | Частота звука: |
| lbl2 | Caption | Продолжительность звука: |
| srlChastota | Min | 37 |
| srlChastota | Max | 32767 |
| srlTime | Min | 0 |
| srlTime | Max | 10000 |
| cmdGen | Caption | &Сгенерировать сигнал |
После всех перечисленных действий форма должна выглядеть примерно так:

3 Добавьте следующий код:
Option Explicit
'Функция генерирует звуковой сигнал
Private Declare Function Beep Lib "kernel32"
(ByVal dwFreq As Long, ByVal dwDuration As Long) As Long
'dwFred - частота звука
'dwDuration - продолжительность сигнала в миллисекундах
Private Sub cmdGen_Click()
'Генерируем звук
Beep srlChastota.Value, srlTime.Value
End Sub
Вот и всё! Вы создали программу для генерации звука из системного динамика.
Пример здесь.
Оставить комментарий
Комментарии
1.


17 февраля 2008, 13:19:37
КГ/АМ
Во-первых, описание функции Beep есть в MSDN и любом справочнике по Win32 API. Какой смысл цитировать документацию? Вот если бы ты предложил что-нибудь свое... Например, то же самое средствами DirectX.
Во-вторых, функция Beep работает только в NT (2000, XP). В Windows 9x и ME функция Beep игнорирует частоту и продолжительность, воспроизводит стандартный звуковой сигнал. Поэтому ее никто особо и не использует.
Во-первых, описание функции Beep есть в MSDN и любом справочнике по Win32 API. Какой смысл цитировать документацию? Вот если бы ты предложил что-нибудь свое... Например, то же самое средствами DirectX.
Во-вторых, функция Beep работает только в NT (2000, XP). В Windows 9x и ME функция Beep игнорирует частоту и продолжительность, воспроизводит стандартный звуковой сигнал. Поэтому ее никто особо и не использует.
2.


14 ноября 2005, 16:27:17
Ксожалению, не взлетело (((
