Scalabium Software

SMExport advertising

Knowledge for your independence.
Home Delphi and C++Builder tips



#23:How can I get a line/column number that a memo/richtext cursor is on?

If you want to retrieve the line and/or column number you must send a messages to control and retrieve the result:

For TRichEdit you must send a EM_EXLINEFROMCHAR and EM_LINEINDEX messages.
For TMemo you must send a EM_LINEFROMCHAR and EM_LINEINDEX messages.

The WParam contains the character number that you wish the line number for, or -1 for the current line (where the caret is located or the beginning of a text selection).

View examples:
- for TMemo
LineNumber := SendMessage(Memo1.Handle, EM_LINEFROMCHAR, -1, 0);

- for TRichEdit
LineNumber  := SendMessage(RichEdit1.Handle, EM_EXLINEFROMCHAR, 0, RichEdit1.SelStart);
ColNumber := (RichEdit1.SelStart - SendMessage(RichEdit1.Handle, EM_LINEINDEX, LineNumber, 0));

PS: not forget that starting values is 0.

See also
 
SMExport suite
SMImport suite
SMReport
SMDBGrid
MAPIMail
Paradox Viewer
Paradox ActiveX
ExcelFile Viewer
Metafile Convert
DBLoad
DBExport tools
 
 
Contact to webmaster

 

Borland Software Code Gear Scalabium Delphi tips

Copyrightc 1998-2008, Scalabium Software. All rights reserved.
webmaster@scalabium.com

September 23, 1999

SMExport advertising