2011-06-07 31 views

回答

6

的有效的方式做到這一點使用純VCL是用SelStartSelLengthSelText

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

您可能會想保存離開選擇修改之前,然後還原它,一旦你讀過的字符。


然而,這是一個相當凌亂的方式來閱讀一個字符。如果您準備使用原始的Win32 API,那麼您可以使用EM_GETTEXTRANGE

1

這裏是你如何定索引處從TRichEdit返回字符:

Result := RichEdit1.Text[Index]; 
+1

這是非常低效的,因爲它讀取整個文本以挑選出單個字符。 – 2011-06-07 11:18:22

相關問題