EM_CHARFROMPOS

GetCaretPosだと座標なので、EM_CHARFROMPOSを使って何行目か、とか、何番目の文字か、とか、そういう情報に変換する。

EM_CHARFROMPOS メッセージ (Winuser.h) - Win32 apps | Microsoft Learn

EM_CHARFROMPOS.rcで、

Item3-1を追加。
EM_CHARFROMPOS.cppで、

EM_CHARFROMPOSをSendMessageした時の戻り値のHIWORDは何行目かを示し、LOWORDはキャレットまでの総文字数を示す。

GとHの間にキャレットを置く。
GとHの間にキャレットを置く。

GとHの間にキャレットを置く。

これでItem3-1を選択
これでItem3-1を選択

これでItem3-1を選択。

0行目から数えたら1行目だし、改行コード含めるとキャレットまで9文字。
0行目から数えたら1行目だし、改行コード含めるとキャレットまで9文字。

0行目から数えたら1行目だし、改行コード含めるとキャレットまで9文字。

Sample/winapi/EM_CHARFROMPOS/EM_CHARFROMPOS/src/EM_CHARFROMPOS at master · bg1bgst333/Sample · GitHub