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の間にキャレットを置く。
これでItem3-1を選択。
0行目から数えたら1行目だし、改行コード含めるとキャレットまで9文字。