procedure TForm1.btn1Click(Sender: TObject);
var Str:string;
begin
Str:=Memo1.Text;
with Memo1 do
begin
Caption:=Text
end;
end;
上图是调试时显示的Memo1.Text值
上图是调试时显示with Memo1 do 后的Text值
为什么会这样呢?大家可以试试,我用Delphi7
...全文
15614打赏收藏
■■ With语句的怪事,谁遇见过吗?
procedure TForm1.btn1Click(Sender: TObject); var Str:string; begin Str:=Memo1.Text; with Memo1 do begin Caption:=Text end; end; 上图是调试时显示的Memo1.Text值 上图是调试时显示with Memo1 do 后的Text值 为什么会这样呢?大家可以试试,我用Delphi7
[code=Delphi]
function TControl.GetText: TCaption;
var
Len: Integer;
begin
Len := GetTextLen;
SetString(Result, PChar(nil), Len);
if Len <> 0 then GetTextBuf(Pointer(Result), Len + 1);
end;
[/code]