Beep 语句
      通过计算机喇叭发出一个声调。语法Beep说明呼叫的频率与时间长短取决于硬件和系统软件,并随电脑不同而不同。.
Beep 语句示例
本示例使用 Beep 语句让计算机连续响三声。Dim I
For I = 1 To 3   ' 循环 3 次。
   Beep   ' 发出一声。
Next I

解决方案 »

  1.   

    Private Declare Function Beep Lib "kernel32" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long
    Private Sub Form_Activate()
        'KPD-Team 1999
        'URL: http://www.allapi.net/
        'E-Mail: [email protected]
        Dim Cnt As Long
        For Cnt = 0 To 5000 Step 10
            'play a tone of 'Cnt' hertz, for 50 milliseconds
            Beep Cnt, 50
            Me.Caption = Cnt
            DoEvents
        Next Cnt
    End Sub
      

  2.   

    ------------> 利用一个隐含的系统API函数实现: <------------注意,这个可不是Beep函数哦,但很类似的,呵呵Private Declare Function APIBeep Lib "kernel32" Alias "Beep" (ByVal dwFreq As Long, ByVal dwDuration As Long) As LongPrivate Sub Command1_Click()
      Dim i As Long
      For i = 0 To 3000
      APIBeep i, 50
      Next
    End Sub
      

  3.   

    Private Declare Function APIBeep Lib "kernel32" Alias "Beep" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long'*********************************************************
    '* 名称:BeepSet
    '* 功能:PC 喇叭提示
    '* 用法:BeepSet(音量频率,一次声音的长短,响音次数)
    '*********************************************************
    Public Sub BeepSet(nPara1 As Long, nPara2 As Long, nPara3 As Long)
      Dim frequency As Long
      Dim i As Long
      For i = 1 To nPara3
        frequency = nPara1
        APIBeep frequency, nPara2
      Next
    End Sub
      

  4.   

    调用 Call BeepSet(2500, 300, 3)
      

  5.   

    呵呵,还告诉你一个方法,利用直接的端口控制。
    先去下面这个地址下载 vbio13.zip
    http://www.zealsoftstudio.com/vbio/vbio13.zip
    解压后安装,记得安装32位版本的(你不会在用16位版本的系统吧?)
    当然了,这个vbio32.dll的功能还可以扩充啦,你可以用于其它的方面了。
    里面有一个示例程序,部分代码如下:Public Sub Speaker(bOn As Boolean)
        Dim portVal As Integer
        portVal = Inport(&H61)
        If bOn Then
            portVal = portVal Or 3
            portVal = &H2F
        Else
            portVal = portVal And (Not 3)
        End If
        Outport &H61, portVal
    End Sub
    Public Sub SetFreq(hertz As Integer)
        If hertz Then
            Dim divisor As Long
            divisor = 1193180 / hertz
            Outport &H43, &HB6
            Outport &H42, divisor Mod 256
            Outport &H42, divisor \ 256
            Speaker True
        Else
            Speaker False
        End If
    End SubPrivate Sub btnSoundOn_Click()
        SetFreq Val(Text1)
    End SubPrivate Sub btnSoundOff_Click()
        Speaker False
    End Sub