如何在编辑控件中偏移光标的位置



我正在构建一个自定义编辑控件,它包括在编辑控件内的左侧添加一个图标和右侧添加一个按钮。这需要将文本(和光标)的起点向右移动X像素量。这也意味着我需要"限制"文本的绘制宽度,为右侧的按钮腾出空间。其目的是在左侧(如浏览器中)提供一个自定义图标,并在右侧提供一个"X"按钮以清除编辑控件的内容。

如何偏移RectTCustomEdit子体中绘制文本和光标的位置?

如果您使用的是Delphi的最新版本,那么应该已经有一个TButtedEdit控件,可以完成您的工作。

如果没有,我认为您可以向TCustomEdit发送EM_SETMARGINS消息来设置左右边距。

SendMessage(CustomEdit.Handle, EM_SETMARGINS, EC_LEFTMARGIN or EC_RIGHTMARGIN, MakeLong(LeftMargin, RightMargin));

相关内容

  • 没有找到相关文章

最新更新