desactivar tecla o parar un wav
Publicado por Quiros (1 intervención) el 03/03/2010 12:00:16
Buenas estoy desarrollando una aplicción que llama un wav co una pulsacion de teclado numerico , lo hago asi
Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" _
(ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Option Explicit
Private Sub Form_Keydown(KeyCode As Integer, Shift As Integer)
Const SND_SYNC = &H0
Const SND_ASYNC = &H1
Const SND_LOOP = &H8
Const SND_NOSTOP = &H10
If KeyCode = vbKeyNumpad8 Then Call sndPlaySound("c:\1.wav", SND_ASYNC + SND_LOOP)
Todo funciona correctamente , el archivo 1.wav que ejecuto es una sola nota y se reproduce constantemente como deseo , el caso es que si sigo manteniendo la tecla pulsada (que lo hago) se produce un chasquido cada vez que empieza a reproducirse de nuevo el wav , mi intencion es que sonase sn chasquido , se me ocurre que tiene que haber una forma que ignore la tecla hasta que se pulse otra ,eso me serviria o que se anulase la tecla si ese wav se esta reproduciendo que tambien me serviria , el caso es que no se como hacer ninguna de estas cosas , tambien podria probrar con el reproducir con otro metodo distinto a este.
Un saludo y graciñas.
Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" _
(ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Option Explicit
Private Sub Form_Keydown(KeyCode As Integer, Shift As Integer)
Const SND_SYNC = &H0
Const SND_ASYNC = &H1
Const SND_LOOP = &H8
Const SND_NOSTOP = &H10
If KeyCode = vbKeyNumpad8 Then Call sndPlaySound("c:\1.wav", SND_ASYNC + SND_LOOP)
Todo funciona correctamente , el archivo 1.wav que ejecuto es una sola nota y se reproduce constantemente como deseo , el caso es que si sigo manteniendo la tecla pulsada (que lo hago) se produce un chasquido cada vez que empieza a reproducirse de nuevo el wav , mi intencion es que sonase sn chasquido , se me ocurre que tiene que haber una forma que ignore la tecla hasta que se pulse otra ,eso me serviria o que se anulase la tecla si ese wav se esta reproduciendo que tambien me serviria , el caso es que no se como hacer ninguna de estas cosas , tambien podria probrar con el reproducir con otro metodo distinto a este.
Un saludo y graciñas.
Valora esta pregunta


0