请帮忙--毕业设计中遇到的问题(2)(50分)

  • 主题发起人 主题发起人 无影
  • 开始时间 开始时间

无影

Unregistered / Unconfirmed
GUEST, unregistred user!
在FORM.CREATE 紧接着执行的程序段加在哪里?
要求:在FORM未显示前
 
OnShow事件
 
create
show
activate
就行了。
 
假如只想在CREATE 后只执行一次,应作个标示Done:Boolean,OnShow第一次执行后就
将它设为True ,以后OnShow不再执行就是
 
OnCreate,绝对只执行一次,且在ONShow前
 
自己动手去证明:
procedure TForm1.FormCreate(Sender: TObject);
begin
Caption := 'OnCreate ';
end;

procedure TForm1.FormShow(Sender: TObject);
begin
Caption := Caption + 'OnShow ';
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
Caption := Caption + 'OnActive ';
end;

运行,再看看窗口标题,明白?
 
一个办法:用OnCreate;
另一个:先将Form1的Visible设为False;
Form1:=TForm1.Create(Application);
{Call USelf Procedure};
Form1.Show;
最后在Form1.OnDestroy写: Free;
 
to croco:
看得见吗? 呵呵.
 
to superMMx:
可以的,在CAPTION前加个FORM1就行!
 
oncreate也有可能在窗口显示前和显示后执行两种方案,
好象可以设置一个可见的属性,忘了,自已找找吧
 
最好在每个事件里加个showmessage
单步执行程序!
 
多人接受答案了。
 
后退
顶部