volume.bas
来自「mp3播放器」· BAS 代码 · 共 45 行
BAS
45 行
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 + =
减小字号Ctrl + -
显示快捷键?