5,930
社区成员




procedure TForm1.Memo3DblClick(Sender: TObject);
var
k,i,j:integer;
begin
j:=0;
k:=Memo3.CaretPos.y;
k:=strToint(copy(Memo3.Lines.Strings[k],1,pos('[',Memo3.Lines.Strings[k])-1))-1; {最后面的减1,是把Memo1的第0行当第1行看)
if k>memo1.Lines.Count then exit;
Memo1.SetFocus;
for i:=0 to k do
j:=j+length(Memo1.Lines.Strings[i]);
memo1.SelStart:=j-Length(Memo1.Lines.Strings[k])+k*2;
memo1.SelLength:=Length(Memo1.Lines.Strings[k]);
end;
procedure TForm1.Memo1DblClick(Sender: TObject);
var
k,i,j:integer;
begin
j:=0;
k:=Memo3.CaretPos.y;
if k>memo1.Lines.Count then exit;
for i:=0 to k do
j:=j+length(Memo1.Lines.Strings[i]);
memo1.SelStart:=j-Length(Memo1.Lines.Strings[k])+k*2;
memo1.SelLength:=Length(Memo1.Lines.Strings[k]);
end;