过程中的值引用问题,问过3遍了,还没解决
过程:Memoreturn
目的:引用Memoo内容,并进行修改,把结果赋给Memon,但Memoo中的内容不改变。修改内容把"Lines[0]"替换成"REPLACETEXT"。
procedure TForm1.Memoreturn(var Memoo,Memon:TMemo);
var i,j,count: integer;
Memotemp: TMemo;
begin
Memotemp := TMemo.Create(self);
Memotemp.Assign(Memoo);//这里有问题,我开始使用的是Memotemp := Memoo;
//后来有人告诉我这样写,可系统提示can not assign a TMemo to a TMemo
count := 0;
for i := 0 to Memotemp.Lines.Count do
begin
for j := 1 to Length(Memotemp.Lines[i]) do
begin
if pos('Lines[0]',Memotemp.Lines[i]) <> 0 then
begin
Memotemp.SetFocus;
Memotemp.SelStart := pos('Lines[0]',Memotemp.Lines[i]) + count - 1;
Memotemp.SelLength := Length('Lines[0]');
Memotemp.SelText := 'REPLACETEXT';//进行替换
end;
end;
count := Length(Memotemp.Lines[i]) + count + 2;
end;
Memon.Lines.Text := Memotemp.Lines.Text;
end;