The window procedure for the predefined edit control window class carries out
default processing for all messages that the edit control procedure does not
process. When the edit control procedure returns FALSE for any message, the
predefined window procedure checks the messages and carries out the following
default actions.
Message
| Default action
|
EM_CANUNDO
| Returns TRUE if the edit control operation can be undone.
|
EM_CHARFROMPOS
| Returns the character index and line index of the character nearest the
specified point.
|
EM_EMPTYUNDOBUFFER
| Empties the undo buffer and sets the undo flag retrieved by the EM_CANUNDO message to FALSE. Windows automatically clears the undo flag whenever the
edit control receives a WM_SETTEXT or EM_SETHANDLE message.
|
EM_FMTLINES
| Adds or removes soft linebreak characters (two carriage returns and a
linefeed) to the ends of wrapped lines in a multiline edit control. It is not processed
by single-line edit controls.
|
EM_GETFIRSTVISIBLELINE
| Returns the zero-based index of the first visible character in a single-line
edit control or the zero-based index of the uppermost visible line in a
multiline edit control.
|
EM_GETHANDLE
| Returns a handle identifying the buffer containing the multiline edit
control's text. It is not processed by single-line edit controls.
|
EM_GETLIMITTEXT
| Returns the current text limit, in characters.
|
EM_GETLINE
| Copies characters in a single-line edit control to a buffer and returns the
number of characters copied. In a multiline edit control, retrieves a line of
text from the control and returns the number of characters copied.
|
EM_GETLINECOUNT
| Returns the number of lines in the edit control.
|
EM_GETMARGINS
| Returns the widths of the left and right margins.
|
EM_GETMODIFY
| Returns a flag indicating whether the content of an edit control has been
modified.
|
EM_GETPASSWORDCHAR
| Returns the character that edit controls use in conjunction with the
ES_PASSWORD style.
|
EM_GETRECT
| Returns the coordinates of the formatting rectangle in an edit control.
|
EM_GETSEL
| Returns the starting and ending character positions of the current selection
in the edit control.
|
EM_GETTHUMB
| Returns the position of the scroll box.
|
EM_GETWORDBREAKPROC
| Returns the address of the current wordwrap function in an edit control.
|
EM_LINEFROMCHAR
| Returns the zero-based number of the line in a multiline edit control that
contains a specified character index This message is the reverse of the EM_LINEINDEX message. It is not processed by single-line edit controls.
|
EM_LINEINDEX
| Returns the character of a line in a multiline edit control. This message is
the reverse of the EM_LINEFROMCHAR message. It is not processed by single-line edit controls.
|
EM_LINELENGTH
| Returns the length, in characters, of a single-line edit control. In a
multiline edit control, returns the length, in characters, of a specified line.
|
EM_LINESCROLL
| Scrolls the text vertically in a single-line edit control or horizontally in a
multiline edit control (when the control has the ES_LEFT style). The lParam parameter specifies the number of lines to scroll vertically, starting from
the current line. The wParam parameter specifies the number of characters to scroll horizontally, starting
from the current character.
|
EM_POSFROMCHAR
| Returns the client coordinates of the specified character.
|
EM_REPLACESEL
| Replaces the current selection with the text in an application-supplied
buffer, sends the parent window EN_UPDATE and EN_CHANGE messages, and updates the undo buffer.
|
EM_SCROLL
| Scrolls the text vertically in a multiline edit control. This message is
equivalent to sending a WM_VSCROLL message to the edit control. It is not processed by single-line edit controls.
|
EM_SCROLLCARET
| Scrolls the caret into view in an edit control. In earlier versions of Windows
this was done via EM_SETSEL using particular parameters. A Win32-based application should use
EM_SCROLLCARET.
|
EM_SETFONT
| Unsupported.
|
EM_SETHANDLE
| Sets a handle to the memory used as a text buffer, empties the undo buffer,
resets the scroll positions to zero, and redraws the window.
|
EM_SETLIMITTEXT
| Sets the maximum number of characters the user may enter in the edit control.
For single-line edit controls, this value is either 0x7FFFFFFE (0x7FFE for
version 4.0) or the value of the wParam parameter, whichever is smaller. For multiline edit controls, this value is
either 0xFFFFFFFF (0xFFFF for version 4.0) or the value of the wParam parameter, whichever is smaller.
|
EM_SETMARGINS
| Sets the widths of the left and right margins, and redraws the edit control to
reflect the new margins.
|
EM_SETMODIFY
| Sets or clears the modification flag to indicate whether the edit control has
been modified.
|
EM_SETPASSWORDCHAR
| Defines the character that edit controls use in conjunction with the
ES_PASSWORD style.
|
EM_SETREADONLY
| Sets or removes the read-only style (ES_READONLY) in an edit control.
|
EM_SETRECT
| Sets the formatting rectangle for the multiline edit control and redraws the
window. It is not processed by single-line edit controls.
|
EM_SETRECTNP
| Sets the formatting rectangle for the multiline edit control but does not
redraw the window. It is not processed by single-line edit controls.
|
EM_SETSEL
| Selects a range of characters in the edit control by setting the starting and
ending positions to be selected.
|
EM_SETTABSTOPS
| Sets tab-stop positions in the multiline edit control. It is not processed by
single-line edit controls.
|
EM_SETWORDBREAKPROC
| Replaces the default wordwrap function with an application-defined wordwrap
function.
|
EM_UNDO
| Removes any text that was just inserted or inserts any deleted characters and
sets the selection to the inserted text. If necessary, sends the EN_UPDATE and EN_CHANGE notification messages to the parent window.
|
WM_CHAR
| Writes a character to the single-line edit control and sends the EN_UPDATE and
EN_CHANGE notification messages to the parent window. Writes a character to
the multiline edit control. Handles the accelerator keys for standard functions,
such as CTRL+C for copying and CTRL+V for pasting. In multiline edit controls, also processes TAB, and CTRL+TAB keystrokes to move among the controls in a dialog box and to insert tabs into
multiline edit controls. Uses the MessageBeep function for illegal characters.
|
WM_CLEAR
| Clears the current selection, if any, in an edit control. If there is no
current selection, deletes the character to the right of the caret. If the user
presses the SHIFT key, this cuts the selection to the clipboard, or deletes the character to
the left of the caret when there is no selection. If the user presses the CTRL key, this deletes the selection, or deletes to the end of the line when there
is no selection.
|
WM_COPY
| Copies text to the clipboard unless the style is ES_PASSWORD, in which case
the message returns zero.
|
WM_CREATE
| Creates the edit control and notifies the parent window with TRUE for success
or 1 for failure.
|
WM_CUT
| Cuts the selection to the clipboard, or deletes the character to the left of
the cursor if there is no selection.
|
WM_ENABLE
| Causes the rectangle to be redrawn in gray for single-line edit controls.
Returns the enabled state for single-line and multiline edit controls.
|
WM_ERASEBKGND
| Fills the multiline edit control window with the current color of the edit
control.
|
WM_GETDLGCODE
| Returns the following values: DLGC_WANTCHARS, DLGC_HASSETSEL, and
DLGC_WANTARROWS. In multiline edit controls, it also returns DLGC_WANTALLKEYS. If the user
presses ALT+BACKSPACE, it also returns DLGC_WANTMESSAGE.
|
WM_GETFONT
| Returns the handle of the font being used by the control, or NULL if the
control uses the system font.
|
WM_GETTEXT
| Copies the specified number of characters to a buffer and returns the number
of characters copied.
|
WM_GETTEXTLENGTH
| Returns the length, in characters, of the text in an edit control. The length
does not include the null- terminating character.
|
WM_HSCROLL
| Scrolls the text in a multiline edit control horizontally and handles scroll
box movement.
|
WM_KEYDOWN
| Performs standard processing of the virtual-key codes.
|
WM_KILLFOCUS
| Removes the keyboard focus of an edit control window, destroys the caret,
hides the current selection, and notifies the parent window that the edit control
has lost the focus.
|
WM_LBUTTONDBLCLK
| Clears the current selection and selects the word under the cursor. If the SHIFT key is down, extends the selection to the word under the cursor.
|
WM_LBUTTONDOWN
| Changes the current insertion point. If the SHIFT key is down, it extends the selection to the position of the cursor. In
multiline edit controls, also sets the timer to automatically scroll when the user
holds down the mouse button outside the multiline edit control window.
|
WM_LBUTTONUP
| Releases the mouse capture and sets the text insertion point in the
single-line edit control. In a multiline edit control, it also kills the timer set in the WM_LBUTTONDOWN message.
|
WM_MOUSEMOVE
| Changes the current selection in the single-line edit control, if the mouse
button is down. In a multiline edit controls, also sets the timer to
automatically scroll if the user holds down the mouse button outside the multiline edit
control window.
|
WM_NCCREATE
| Points to the CREATESTRUCT structure for the window. This message is sent to the WM_CREATE message when a window is first created.
|
WM_NCDESTROY
| Frees all memory associated with the edit control window, including the text
buffer, undo buffer, tab-stop buffer, and highlight brush.
|
WM_PAINT
| Erases the background, fills the window with the current color of the edit
control window, draws the border (if any), sets the font and draws any text, and
shows the text-insertion caret.
|
WM_PASTE
| Pastes text from the clipboard into the edit control window at the caret
position.
|
WM_SETFOCUS
| Sets the keyboard focus of an edit control window (shows the current
selection, if it was hidden, and creates the caret).
|
WM_SETFONT
| Sets the font and optionally redraws the edit control.
|
WM_SETTEXT
| Copies text to the single-line edit control, notifies the parent window when
there is insufficient memory, empties the undo buffer, and sends the EN_UPDATE and EN_CHANGE notification messages to the parent window. In multiline edit controls, also
rewraps the lines (if necessary) and sets the scroll positions.
|
WM_SIZE
| Changes the size of the edit control window and ensures that the minimum size
accommodates the height and width of a character.
|
WM_SYSCHAR
| Returns TRUE if the user presses ALT+BACKSPACE; otherwise, it takes no action.
|
WM_SYSKEYDOWN
| Undoes the last action if the user presses ALT+BACKSPACE; otherwise, it takes no action.
|
WM_TIMER
| Scrolls the text in the edit control window if the user holds down the mouse
button outside the multiline edit control window.
|
WM_UNDO
| Removes any text that was just inserted or inserts any deleted characters and
sets the selection to the inserted text. If necessary, sends the EN_UPDATE and EN_CHANGE notification messages to the parent window.
|
WM_VSCROLL
| Scrolls a multiline edit control vertically and handles scroll box movement.
It is not processed by single-line edit controls.
|