见鬼!在MDI中用TRichEdit.FindText出现问题???
如下代码在单文档窗体中测试无问题,找到关键字匹配后选中该段文字。但在MDI中,找到匹配文字后,却不能显示选种状态(蓝底白字),但其实是选种了,只是由于MDI FORM为非ACTIVE状态,所以未显示出来,如用鼠标在其窗体上点一下,旧能看到蓝底白字的选中字段。我试了SetFocus,但不行。请高手指点。这不会是Delphi锝bug吧?那就太惨了。
with RichEdit1 do
begin
if SelLength <> 0
then StartPos := StartPos + SelLength
else StartPos := SelStart;
ToEnd := Length(Text) - StartPos;
FoundAt := FindText(FindDialog1.FindText, StartPos, ToEnd,[stMatchCase]) ;
if FoundAt <> -1 then
begin
SetFocus;
SelStart := FoundAt;
SelLength := Length(FindDialog1.FindText);
end else ShowMessage('不能找到"'+FindDialog1.FindText +'".');