Microsoft KB Archive/12190

{|
 * width="100%"|

HOWTO: Place a Caret After Edit-Control Text

 * }

Q12190

-

The information in this article applies to:


 * Microsoft Windows Software Development Kit (SDK)
 * Microsoft Win32 Software Development Kit (SDK)

-

SUMMARY
The EM_SETSEL message can be used to place a selected range of text in a Windows edit control. If the starting and ending positions of the range are set to the same position, no selection is made and a caret can be placed at that position. To place a caret at the end of the text in a Windows edit control and set the focus to the edit control, do the following:

  hEdit = GetDlgItem( hDlg, ID_EDIT );    // Get handle to control. SetFocus( hEdit ); SendMessage( hEdit, EM_SETSEL, 0, MAKELONG(0xffff,0xffff) ); It is also possible to force the caret to a desired position within the edit control. The following code fragment shows how to place the caret just to the right of the Nth character:

  hEdit = GetDlgItem( hDlg, ID_EDIT );    // Get handle to control. SetFocus( hEdit ); SendMessage( hEdit, EM_SETSEL, 0, MAKELONG(N,N) ); // N is the character position. Additional query words:

Keywords : kbCtrl kbEditCtrl kbOSWinNT kbOSWin2000 kbSDKWin32 kbGrpDSUser kbOSWin

Issue type : kbhowto

Technology : kbWin32SDKSearch kbAudDeveloper kbSDKSearch kbWin32sSearch kbWinSDKSearch