SynMemo(SynEdit)で、カーソル行位置を取得するには?

解決


RAD命  2012-12-12 14:19:46  No: 43468  IP: 192.*.*.*

お世話になります。

環境は、Win8,TurboDelphi2006です。


以下の事をしたいと考えています。


procedure TForm1.Button1Click(Sender: TObject);
var
  y : integer;
begin
  with SynMemo1 do begin
    y := SendMessage(Handle, EM_LINEFROMCHAR, SelStart, 0);
    Lines.Insert( y ,'<u>' + Lines[y] + '</u>'+ char(13) );
  end;
end;

Richeditでは問題なく作動するのですが、
SynEditでは、うまく作動しません。
現在行を取得できないようです。
何か良い方法は無いでしょうか?

よろしくお願いします。

編集 削除
au  2012-12-12 16:38:50  No: 43469  IP: 192.*.*.*

確認してないですけど。
CaretYもしくはDisplayYが目的のものじゃないでしょうか?

編集 削除
RAD命  2012-12-12 17:16:25  No: 43470  IP: 192.*.*.*

auさん>ありがとうございます、まさにそれでした。
CaretYで現在行取得できました。

他には先ほど色々試していたら見つけたのですが、
BlockBegin.y
BlockEnd.y

でも、現在行と、選択範囲の行位置取得も出来ました。

助かりました。
ありがとうございました。

編集 削除