关于onCreate 和OnShow的区别 ( 积分: 0 )

  • 主题发起人 主题发起人 天使在唱歌2007
  • 开始时间 开始时间

天使在唱歌2007

Unregistered / Unconfirmed
GUEST, unregistred user!
请问这两个事件的区别主要是什么,能详细点吗
 
先是出发 oncreate 然后是onshow.时间先后顺序区别。也就是先创建再显示。
 
oncreate 是创建, 创建后不一定要显示,但是创建后里面的所有成员函数均可用了。
onshow 是显示,对于窗体来说就是显示个窗体给用户看。
 
you are welcome!
 
先学习一下office access vba 帮助吧。
 
oncreate 时还可以设置空间的大小,例如 left,width Visible等!
 
呵呵,楼上的;onShow时也是可以设置的。在onShow时写代码,其实界面还没有真正显示出来。
在oncreate时,如果想用窗体里面的对象的话是不行的(因为还没有创建),而在ONSHOW时就可以用窗体里面的东东了。
比如:在OnCreate里你想用Memo.lines.add('1');会出错的,而在OnShow时用Memo.Lines.Add('1');就正常了。
 
Oncreate只在窗体创建的时候触发,好像是只有一次的,而OnShow是每次打开窗体时都对触发的.
 
to sedwen:
嘿嘿!你在OnShow中时时 Visible 属性看看 !
 
OnCreate是delphi本身对窗体实例化,给窗体分配内存,实例化后才会有窗体这个对象,有了对象之后才可以显示出来.
OnShow就是当你每次打开这个窗体时,窗体显示后都将会触发这个过程,你可以调个断点试试.
Oncreate只触发一次,而onShow,当你每次打开这个窗体时都将会触发.
 
“在OnCreate里你想用Memo.lines.add('1');会出错的“ 这个是

谁告诉你的 砍他去
 
在Oncreate里面,窗口里所有的对象都已经创建OK了.. 所有的对象都分自动分配了内存,应该都可以使用的.OnSHow貌似没多大用处..
 
学习完成!可以结铁!
 
接受答案了.
 

Similar threads

后退
顶部