Delphi 7从备注行中删除一些字符

标签 delphi delphi-7

我在备忘录中有这样的行:

111111.kll
222222.kll

我需要从每行中删除最后 4 个字符以获得如下结果:

111111
222222

最佳答案

作为 GolezTrol 解决方案的替代方案,您可以直接操作 Memo 内容,而不是先在内存中复制它:

var
  i, LineStart, LineLen: Integer;
begin
  Memo1.Lines.BeginUpdate;
  try
    for i := 0 to Memo1.Lines.Count - 1 do
    begin
      LineStart := Memo1.Perform(EM_LINEINDEX, i, 0);
      LineLen := Memo1.Perform(EM_LINELENGTH, LineStart, 0);
      Memo1.Perform(EM_SETSEL, LineStart + LineLen - 4, LineStart + LineLen);
      Memo1.SelText := '';
    end;
  finally
    Memo1.Lines.EndUpdate;
  end;
end;

关于Delphi 7从备注行中删除一些字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31416370/

相关文章:

delphi - Delphi7中如何增加MessageDlg宽度?

delphi - 避免在运行时出错

delphi - 尝试访问类属性时出错

delphi - 使用泛型创建接口(interface)对象

delphi - Indy IdFTP 在事件连接上失败

delphi - 如何以delphi形式使用Gif动画

android - Android 手机上的 Code Pascal 应用程序

delphi - 创建面积图,用其他颜色为溢出值的部分着色

delphi - 在创建的表单上显示模式,无法访问模态表单

德尔福ADO : necessary to clean up parameters?