Bienvenido (a)
a
Hack Diseño ®
¡Gracias por tu visita!
Entrar

No detener temporizadores cuando un Mgsbox este activo VB6

Para ello, se debe utilizar la función MessageBox API en lugar de la incorporada en la función MsgBox. La función de la API tiene una sintaxis similar, pero se necesita un argumento adicional que indica que la ventana padre del

cuadro de diálogo de mensaje (puede usar Me.hWnd), y el orden de los botones de Título y argumentos se invierte.

Aún más interesante, todas las constantes de Visual Basic se puede utilizar

sin ningún problema para el argumento de botones, es decir, se puede envolver la Api en una funcion que tome los mismos argumentos

y el mismo orden que el Msgbox estandar.


Para usar la funcion MessageBox deben declarar esto primero:


Private Declare Function MessageBox Lib "user32" Alias "MessageBoxA" (ByVal _

hWnd As Long, ByVal lpText As String, ByVal lpCaption As String, _

ByVal wType As Long) As Long


y para crear nuestro propio msgbox con el mismo orden y los mismos argumentos el codigo es este:


Function MsgBox2(Prompt As String, Optional Buttons As VbMsgBoxStyle, _

Optional Title As Variant) As VbMsgBoxResult

If IsMissing(Title) Then Title = App.Title

MsgBox2 = MessageBox(Screen.ActiveForm.hWnd, Prompt, Title, Buttons)

End Function

Espero y le pueda servir a muchos.

Usamos cookies propias y de terceros que entre otras cosas recogen datos sobre sus hábitos de navegación para mostrarle publicidad personalizada y realizar análisis de uso de nuestro sitio.
Si continúa navegando consideramos que acepta su uso. OK Más información | Y más