delphi Memo 的当前行、当前列与当前字符


本文整理自网络,侵删。

 procedure TForm1.Memo1Click(Sender: TObject);
begin
Text := Format('当前列:%d, 当前行:%d', [Memo1.CaretPos.X, Memo1.CaretPos.Y]);
end;

//用 API 实现
procedure TForm1.Memo1Click(Sender: TObject);
var
LineY,LineX: Integer;
begin
LineY := SendMessage(Memo1.Handle,EM_LINEFROMCHAR,Memo1.SelStart,0);
LineX := SendMessage(Memo1.Handle,EM_LINEINDEX,LineY,0);
Text := '当前行:' + IntToStr(LineY) + '; ' +                  //0开始
          '当前列:' + IntToStr(Memo1.SelStart - LineX) + '; ' +   //0开始
          '当前字符:' + IntToStr(Memo1.SelStart) + '. ';          //包括#13#10
end;

相关阅读 >>

Delphi提取二值图像轮廓

我的Delphi开发经验谈

Delphi 使用int3进行hook处理

Delphi idhttp实现地址自动转向

firemonkey listbox 的几个事件:拖动,点击,长按

Delphi 输出用空格对齐字符串的函数

Delphi tfdmemtable 更新到数据库

Delphi 时间转成大写

Delphi datasnap中间件如何控制长连接的客户端连接?

剪贴板单元 clipboards.pas

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



打赏

取消

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

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

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

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

评论

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