La Red de Conocimientos Pedagógicos - Currículum vitae - Programación en lenguaje C, cómo hacer que el cuadro de diálogo emergente esté en primer plano cuando se ejecuta el siguiente código. (compilador Vc 6.0)

Programación en lenguaje C, cómo hacer que el cuadro de diálogo emergente esté en primer plano cuando se ejecuta el siguiente código. (compilador Vc 6.0)

Se recomienda probar AfxMessageBox(); Se dice que el cuadro de mensaje es originalmente un sistema modal, por lo que debería ser la parte frontal del cuadro de diálogo.

API de Windows: MessageBox();

CWnd::MessageBox();

MFC: AfxMessageBox();

donde CWnd :: MessageBox() y AfxMessageBox() son encapsulaciones de la función API MessageBox().

Explicación sobre si se requiere el identificador HWND:

1) MessageBox es una API, por lo que requiere el parámetro HWND para especificar el formulario al que pertenece.

2) CWnd::MessageBox() es una función miembro de CWnd. Requiere que MessageBox solo pueda usarse en la clase cwnd y sus subclases. No requiere el parámetro HWND porque CWnd ya lo ha especificado; la ventana a la que pertenece. Por lo tanto, CWnd::MessageBox() y ::MessageBox(HWND) tienen el mismo efecto.

3) Función global AfxMessageBox() en mfc, sin identificador del parámetro HWND. AfxMessageBox() se puede utilizar siempre que se pueda utilizar MessageBox(), pero AfxMessageBox no puede establecer el título del cuadro de mensaje (su título predeterminado es el nombre del archivo ejecutable de la aplicación).

Sugerencias de uso:

1) La función API MessageBox se usa en clases que no son CWnd, pero es muy inconveniente de usar. Debe especificar el título, el identificador, el estilo, etc. . De lo contrario, elija CWnd ::MessageBox() o AfxMessageBox, son convenientes de usar.

2) MessageBox es un cuadro de diálogo modal. Cuando no confirma, el programa no se ejecutará. Bloqueará su hilo actual. A menos que su programa sea un programa de subprocesos múltiples, solo hay un. esperando modal. Se confirma el cuadro de diálogo. 3) Si usa MFC, intente usar afxmessagebox, porque este cuadro de diálogo global es el más seguro y conveniente.