The user makes editing requests by using the keyboard and mouse. The system sends each request to the edit control's parent window in the form of a WM_COMMAND message. The message includes the edit control identifier in the low-order word of the wParam parameter, the handle of the edit control in the lParam parameter, and an edit control notification message corresponding to the user's action in the high-order word of the wParam parameter.
An application should examine each notification message and respond appropriately. The following table lists each edit control notification message and the action that generates it.
Notification message | User action |
---|---|
EN_CHANGE | The user has modified text in an edit control. The system updates the display before sending this message (unlike EN_UPDATE). |
EN_ERRSPACE | The edit control cannot allocate enough memory to meet a specific request. |
EN_HSCROLL | The user has clicked the edit control's horizontal scroll bar. The system sends this message before updating the screen. |
EN_KILLFOCUS | The user has selected another control. |
EN_MAXTEXT | While inserting text, the user has exceeded the specified number of characters for the edit control. Insertion has been truncated. This message is also sent either when an edit control does not have the ES_AUTOHSCROLL style and the number of characters to be inserted exceeds the width of the edit control or when an edit control does not have the ES_AUTOVSCROLL style and the total number of lines to be inserted exceeds the height of the edit control. |
EN_SETFOCUS | The user has selected this edit control. |
EN_UPDATE | The user has altered the text in the edit control and the system is about to display the new text. The system sends this message after formatting the text, but before displaying it, so that the application can resize the edit control window. |
EN_VSCROLL | The user has clicked the edit control's vertical scroll bar. The system sends this message before updating the screen. |
In addition, the system sends a WM_CTLCOLOREDIT message to an edit control's parent window before the edit control is drawn. This message contains a handle of the edit control's display context (DC) and a handle of the child window. The parent window can use these handles to change the edit control's text and background colors.