===============这是正确的代码=======================
procedure TForm1.Button1Click(Sender: TObject);
begin
with OpenDialog1 do
with RichEdit1 do
if Execute then //OpenDialog1
begin
Lines.LoadFromFile(FileName);
FFileName := FileName;
SetFocus;
Modified:=False;
end;
end;===============疑问=====================
用了两个:
with OpenDialog1 do
with RichEdit1 do
我不明白的是:
系统怎么会知道,Execute 用OpenDialog1,
而又是怎么会知道:SetFocus 是用RichEdit1的请高人指点一,二
procedure TForm1.Button1Click(Sender: TObject);
begin
with OpenDialog1 do
with RichEdit1 do
if Execute then //OpenDialog1
begin
Lines.LoadFromFile(FileName);
FFileName := FileName;
SetFocus;
Modified:=False;
end;
end;===============疑问=====================
用了两个:
with OpenDialog1 do
with RichEdit1 do
我不明白的是:
系统怎么会知道,Execute 用OpenDialog1,
而又是怎么会知道:SetFocus 是用RichEdit1的请高人指点一,二
with OpenDialog1 do
with RichEdit1 do
if Execute then
OpenDialog1在前面,后面的RichEdit1和它的类型相同
赋值的时候
Execute在前面
SetFocus 在后面
我是这么理解的,互相讨论一下~~~
if Execute then
begin
Lines.LoadFromFile(FileName);
FFileName := FileName;
SetFocus;
Modified:=False;
end;调用顺序:
Execute(OpenDialog1)
Lines.LoadFromFile(RichEdit1)
FileName(OpenDialog1)
FileName(OpenDialog1)
SetFocus(RichEdit1)
Modified(RichEdit1)它的调用没有规则的!
怎么会有先有后呢?
Lines.LoadFromFile(FileName);
FFileName := FileName;
SetFocus;
Modified:=False;
end;
都是RichEdit1的赋值
只有Execute 是OpenDialog1
因为这些被调用的方法都是两个类个自事先定义好的!用with ... do只是使程序简略而已!所以当用到这个方法时,他就自动会去检测,该方法的类有没有被with .. do 定义过应该是这样吧!!!!