2009-10-09 41 views
6

¿Qué código de notificación se envía con el mensaje wm_command al procedimiento de cuadro de diálogo cuando una casilla de verificación cambia de estado?casilla de verificación - notificación de cambio

Y más importante aún, ¿dónde buscaría en el msdn para encontrar los códigos de notificación para varios controles?

Respuesta

6

Tenga en cuenta que las casillas de verificación y los botones de opción son Botones. Por lo tanto, envían mensajes de clic y doble clic, BN_CLICKED y BN_DOUBLECLICKED.

Si usa MFC, puede examinar el estado check con el método CButton::GetCheck. De lo contrario enviar el mensaje BM_GETCHECK al control: SendMessage(button_handle, BM_GETCHECK, 0, 0);

SendMessage puede volver

  • BST_CHECKED botón está marcada.
  • BST_INDETERMINATE El botón está atenuado, lo que indica un estado indeterminado (solo se aplica si el botón tiene el estilo BS_3STATE o BS_AUTO3STATE).
  • BST_UNCHECKED botón se borra
  • Si el botón tiene un estilo distinto de los enumerados, el valor de retorno es cero.

Si utiliza el Visual Studio, la forma más fácil de obtener una lista de eventos/mensajes de un control puede enviar es ir a ver/Diseño de recursos, haga clic derecho y seleccione un control Eventos.

Para obtener una lista de los controles comunes ver: Control Library
(en la página verá un menú desplegable con los controles si se pasa el cursor sobre el enlaceControl Library)

2

Es BN_CLICKED. La parte inferior de la página se vincula a los mensajes del botón.

+0

Gracias, pensé que lo había intentado pero cometió un() error. ¿Qué quiere decir con 'La parte inferior de la página está vinculada a los mensajes del botón'? ¿Que Página? Veo si sabía lo suficiente como para buscar BN_CLICKED, podría haber llegado a 'Button Messages'. Por ejemplo, si quiero saber más sobre los mensajes del cuadro de lista, ¿dónde comenzaría? –

Cuestiones relacionadas