ShellExecuteでメモ帳を起動しているのですが、開いたメモ帳の
最終行にカーソルをもっていくにはどうすればいいでしょうか?
こんな感じか?
procedure TForm1.Button1Click(Sender: TObject);
var
hMemo, hEdit: HWND;
TxtLen :integer;
begin
hMemo :=FindWindow('Notepad', nil);
if hMemo <> 0 then
begin
hEdit :=FindWindowEx(hMemo, 0, 'Edit', nil);
if hEdit <> 0 then
begin
//文字列長を取得
TxtLen :=SendMessage(hEdit, WM_GETTEXTLENGTH, 0, 0);
//キャレットを最後尾に移動
SendMessage(hEdit, EM_SETSEL, TxtLen, TxtLen);
//キャレットが見える位置までスクロール
SendMessage(hEdit, EM_SCROLLCARET, 0, 0);
end;
end;
end;
実装できました。
ありがとうございます
ツイート | ![]() |