⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 volume.bas

📁 mp3播放器
💻 BAS
字号:
Attribute VB_Name = "volume"
Type lVolType
    v As Long
End Type

Type VolType
    LV As Integer
    RV As Integer
End Type
Dim leftVolume As Single, rightVolue As Single

Declare Function waveOutSetVolume Lib "winmm.dll" (ByVal uDeviceID As Long, ByVal dwVolume As Long) As Long
Declare Function waveOutGetVolume Lib "winmm.dll" (ByVal uDeviceID As Long, lpdwVolume As Long) As Long

Public Function GetVol() As Single
    Dim lVol As lVolType, vol As VolType, LV As Double, RV As Double
    waveOutGetVolume 0, v
    lVol.v = v
    LSet vol = lVol
    LV = vol.LV: If LV < 0 Then LV = 65535 + LV
    leftVolume = 100 * (LV / 65535)

    RV = vol.RV: If RV < 0 Then RV = 65535 + RV
    rightVolume = 100 * (RV / 65535)

    If RV > LV Then LV = RV
    
    GetVol = LV / 65535
End Function

Public Sub SetVol(Level As Single)
    Dim lVol As lVolType, vol As VolType, LV As Double, RV As Double
    LV = Level * 65535: If LV > 32767 Then LV = LV - 65536
    RV = Level * 65535: If RV > 32767 Then RV = RV - 65536
    vol.LV = LV
    vol.RV = RV
    LSet lVol = vol
    v = lVol.v
    
    waveOutSetVolume 0, v

End Sub


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -