我有返回字符索引的函数 GetCharFromPos(Pt: TPoint): Integer;
现在我想获得那个职位的性格。像 GetCharByIndex(Index: Integer): Char;
使用纯 VCL 执行此操作的有效方法是使用SelStart
,SelLength
和SelText
.
function GetCharByIndex(Index: Integer): Char;
begin
RichEdit.SelStart := Index;
RichEdit.SelLength := 1;
Result := RichEdit.SelText[1];
end;
您可能希望在修改之前保存选择,然后在阅读字符后恢复它。
然而,这是读取字符的一种相当混乱的方式。如果您准备使用原始 Win32 API,那么您可以使用EM_GETTEXTRANGE
.
以下是如何从 TRichEdit 返回给定索引处的字符:
Result := RichEdit1.Text[Index];