Compartir vía


mensaje de WM_CTLCOLOREDIT

Un control de edición que no es de solo lectura o deshabilitado envía el mensaje WM_CTLCOLOREDIT a su ventana primaria cuando el control está a punto de dibujarse. Al responder a este mensaje, la ventana primaria puede usar el identificador de contexto del dispositivo especificado para establecer los colores de texto y fondo del control de edición.

WM_CTLCOLOREDIT

    WPARAM wParam;
    LPARAM lParam; 

Parámetros

wParam

Identificador del contexto del dispositivo para la ventana de control de edición.

lParam

Identificador del control de edición.

Valor devuelto

Si una aplicación procesa este mensaje, debe devolver el identificador de un pincel. El sistema usa el pincel para pintar el fondo del control de edición.

Comentarios

Si la aplicación devuelve un pincel que creó (por ejemplo, mediante la función CreateSolidBrush o CreateBrushIndirect ), la aplicación debe liberar el pincel. Si la aplicación devuelve un pincel del sistema (por ejemplo, uno recuperado por la función GetStockObject o GetSysColorBrush ), la aplicación no necesita liberar el pincel.

De forma predeterminada, la función DefWindowProc selecciona los colores predeterminados del sistema para el control de edición.

Los controles de edición de solo lectura o deshabilitados no envían el mensaje de WM_CTLCOLOREDIT ; en su lugar, envían el mensaje WM_CTLCOLORSTATIC .

El WM_CTLCOLOREDIT mensaje nunca se envía entre subprocesos, solo se envía dentro del mismo subproceso.

Si un procedimiento de cuadro de diálogo controla este mensaje, debe convertir el valor devuelto deseado en un INT_PTR y devolver el valor directamente. Si el procedimiento del cuadro de diálogo devuelve FALSE, se realiza el control de mensajes predeterminado. Se omite el valor de DWL_MSGRESULT establecido por la función SetWindowLong .

Edición enriquecida: No se admite este mensaje. Para establecer el color de fondo de un control de edición enriquecido, use el mensaje EM_SETBKGNDCOLOR .

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows Server 2003 [solo aplicaciones de escritorio]
Encabezado
Winuser.h (incluye Windows.h)

Consulte también

Referencia

EM_SETBKGNDCOLOR

WM_CTLCOLORSTATIC

Otros recursos

DefWindowProc

RealizePalette

SelectPalette