1

我有返回字符索引的函数 GetCharFromPos(Pt: TPoint): Integer;

现在我想获得那个职位的性格。像 GetCharByIndex(Index: Integer): Char;

4

2 回答 2

6

使用纯 VCL 执行此操作的有效方法是使用SelStart,SelLengthSelText.

function GetCharByIndex(Index: Integer): Char;
begin    
  RichEdit.SelStart := Index;
  RichEdit.SelLength := 1;
  Result := RichEdit.SelText[1];
end;

您可能希望在修改之前保存选择,然后在阅读字符后恢复它。


然而,这是读取字符的一种相当混乱的方式。如果您准备使用原始 Win32 API,那么您可以使用EM_GETTEXTRANGE.

于 2011-06-07T11:24:06.220 回答
1

以下是如何从 TRichEdit 返回给定索引处的字符:

Result := RichEdit1.Text[Index];
于 2011-06-07T10:46:30.823 回答