Problema con MsgBox Autocerrado
Publicado por Berenice (15 intervenciones) el 25/04/2007 16:41:46
Buenos dias a todos!!
Tengo un problema que me esta atormentando, ya que me tiene detenido todo un proceso...
Uso un mensaje que se cierra solito, es decir, es de Autocerrado, y tengo el siguiente codigo:
'En el modulo tengo:
Public Const NV_CLOSEMSGBOX As Long = &H5000&
Public Declare Function SetTimer& Lib "user32" (ByVal hWnd&, ByVal nIDEvent&, _
ByVal uElapse&, ByVal lpTimerFunc&)
Public Declare Function FindWindow& Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName$, ByVal lpWindowName$)
Public Declare Function LockWindowUpdate& Lib "user32" (ByVal hwndLock&)
Public Declare Function SetForegroundWindow& Lib "user32" (ByVal hWnd&)
Public Declare Function MessageBox& Lib "user32" Alias "MessageBoxA" _
(ByVal hWnd&, ByVal lpText$, ByVal lpCaption$, ByVal wType&)
Public Declare Function KillTimer& Lib "user32" (ByVal hWnd&, ByVal nIDEvent&)
Public Const API_FALSE As Long = 0&
Public Sub TimerProc(ByVal hWnd&, ByVal uMsg&, ByVal idEvent&, ByVal dwTime&)
KillTimer hWnd, idEvent
Dim hMessageBox&
hMessageBox = FindWindow("#32770", "AutoCerrado")
If hMessageBox Then
Call SetForegroundWindow(hMessageBox)
SendKeys "{enter}"
End If
Call LockWindowUpdate(API_FALSE)
End Sub
'Y en la forma tengo:
SetTimer hWnd, NV_CLOSEMSGBOX, 1000&, AddressOf TimerProc
Call MessageBox(hWnd, "Este mensaje desaparecerá en 1 segundos", "AutoCerrado", MB_ICONQUESTION Or MB_TASKMODAL)
Cuando lo corro me marca un error en MB_ICONQUESTION Or MB_TASKMODAL
me dice que no estan declaradas esas variales, que puede ser?
Tienen alguna otra manera de hacer un autocerrado?
Por favor, es muy importante para mi...
Muchas gracias de antemano...
Tengo un problema que me esta atormentando, ya que me tiene detenido todo un proceso...
Uso un mensaje que se cierra solito, es decir, es de Autocerrado, y tengo el siguiente codigo:
'En el modulo tengo:
Public Const NV_CLOSEMSGBOX As Long = &H5000&
Public Declare Function SetTimer& Lib "user32" (ByVal hWnd&, ByVal nIDEvent&, _
ByVal uElapse&, ByVal lpTimerFunc&)
Public Declare Function FindWindow& Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName$, ByVal lpWindowName$)
Public Declare Function LockWindowUpdate& Lib "user32" (ByVal hwndLock&)
Public Declare Function SetForegroundWindow& Lib "user32" (ByVal hWnd&)
Public Declare Function MessageBox& Lib "user32" Alias "MessageBoxA" _
(ByVal hWnd&, ByVal lpText$, ByVal lpCaption$, ByVal wType&)
Public Declare Function KillTimer& Lib "user32" (ByVal hWnd&, ByVal nIDEvent&)
Public Const API_FALSE As Long = 0&
Public Sub TimerProc(ByVal hWnd&, ByVal uMsg&, ByVal idEvent&, ByVal dwTime&)
KillTimer hWnd, idEvent
Dim hMessageBox&
hMessageBox = FindWindow("#32770", "AutoCerrado")
If hMessageBox Then
Call SetForegroundWindow(hMessageBox)
SendKeys "{enter}"
End If
Call LockWindowUpdate(API_FALSE)
End Sub
'Y en la forma tengo:
SetTimer hWnd, NV_CLOSEMSGBOX, 1000&, AddressOf TimerProc
Call MessageBox(hWnd, "Este mensaje desaparecerá en 1 segundos", "AutoCerrado", MB_ICONQUESTION Or MB_TASKMODAL)
Cuando lo corro me marca un error en MB_ICONQUESTION Or MB_TASKMODAL
me dice que no estan declaradas esas variales, que puede ser?
Tienen alguna otra manera de hacer un autocerrado?
Por favor, es muy importante para mi...
Muchas gracias de antemano...
Valora esta pregunta


0