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 在单独线程中运行窗体

Delphi 显示时间日期星期

进程隐藏的Delphi代码

Delphi编写iis过滤器实例

Delphi 拦截tab按键消息

Delphi 10.4中新增功能:新的vcl tedgebrowser组件

Delphi使用idhttp模拟提交页面方法总结

Delphi 全局变量 hinstance 到底是在什么时候赋值的?

Delphi xe5调用外部扫描程序――谷歌 zxing

Delphi 字符串与日期格式互转

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



打赏

取消

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

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

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

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

评论

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