[BlueLeaf1336]>
PROGRAM>
Natural Born Junk>
TMemoの現在行・現在桁の取得
2002/11/13:作成
2003/07/20:RichEdit限定解除
TMemoを引数にとるが、TRichEditでも大丈夫。
動作確認していたオリジナルからエディタで修正したので大丈夫か?
usesにMessagesが必要(SendMessageを使用しているため)。
function GetMemoCurrentLine(AMemo: TMemo): integer;
begin
with AMemo do
Result := SendMessage(Handle, EM_LINEFROMCHAR, SelStart, 0);
end;
function GetMemoCrrentCol(AMemo: TMemo): integer;
begin
with AMemo do
Result := SelStart
- SendMessage(Handle,
EM_LINEINDEX,
GetMemoCurrentLine(AMemo),
0);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
StatusBar1.SimpleText := Format('Row%3.3d Col%3.3d',
[GetMemoCurrentLine(RichEdit1),
GetMemoCrrentCol(RichEdit1)]);
end;