Delphi 在TMemo中查找文本


本文整理自网络,侵删。

 procedure TForm1.Button3Click(Sender: TObject);
var
  I, L: Integer;

begin
  Memo1.WordWrap:= False;
  Memo1.Lines.LoadFromFile('Windows.pas');
  I:= Pos('finalization', Memo1.Text);
  if I > 0 then begin
    L := SendMessage(Memo1.Handle, EM_LINEFROMCHAR, I - 1, 0);
    ShowMessage('Found at line ' + IntToStr(L));
// if you need to select the text found:
    Memo1.SelStart := I - 1;
    Memo1.SelLength := Length('finalization');
    Memo1.SetFocus;
  end;

end;

 

请注意,行号是从零开始,你也应该从减去1 Pos的结果获得从零开始的偏移SendMessage和TMemo.SelStart。

相关阅读 >>

Delphi windows 编程[15] - 菜单消息: wm_command

Delphi getfileversion 获取文件版本

Delphi编程之win10桌面图标设置

Delphi 7中使用加密的sqlite

Delphi 之 tpagecontrol组件

Delphi tadoquery的用法

Delphi firedac 下的 sqlite [7] - 备份、优化、事务(transaction)

Delphi xe 应用程序横竖屏设置

Delphi 自动复制到指定目录的代码

Delphi datasettojson

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...