delphi计事本查打的小小疑问 里内的一个循环可以去掉。。
procedure TForm1.FindDialog1Find(Sender: TObject);var
i, j, PosReturn, SkipChars: Integer;
begin
For i:= 0 to Memo1.Lines.Count do
begin
PosReturn:= Pos(FindDialog1.FindText, Memo1.Lines); PosReturn计算出来后可以再减一
If PosReturn <> 0 then
begin
Skipchars:= 0;
For j:= 0 to i-1 do
Skipchars:= Skipchars + Length(Memo1.Lines); 画横线的可去掉
SkipChars:= SkipChars + (i*2);
SkipChars:= SkipChars + PosReturn - 1;
Memo1.SetFocus;
Memo1.SelStart:= SkipChars; 这里SkipChars换成PosReturn
Memo1.SelLength:= Length(FindDialog1.FindText);
Break;
end;
end;
end;
一样可以查找到呀。。。。,这个会不会有什么不良后果呢? 楼主你怎么解决的啊
页:
[1]