C++ Builder2010窗体生命周期中的五种事件
2016-01-31 19:55
549 查看
C++ Builder2010窗体的生命周期是指窗体从创建到关闭的过程。在C++ Builder2010窗体的生命周期中,有以下五种事件发生。
下面,我们通过C++Builder2010创建VCL Forms Application工程来观察体会窗体生命周期中的事件,如下图:
双击Form1窗体,在窗体的TForm1::FormCreate(TObject *Sender)成员函数中添加如下代码:
添加如下代码:
void __fastcall TForm1::FormShow(TObject *Sender)
{
ShowMessage("OnShow...");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormActivate(TObject *Sender)
{
ShowMessage("OnActivate...");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCloseQuery(TObject *Sender, bool &CanClose)
{
ShowMessage("OnCloseQuery...");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
ShowMessage("OnClose...");
}
编译运行该工程,观察程序运行结果。
OnCreate | 发生在窗体被创建时。通常在此事件中进行初始化工作。 |
OnShow | 发生在窗体显示出来时 |
OnActivate | 发生在窗体被激活时 |
OnCloseQuery | 发生在窗体尝试关闭时。通常在此事件中进行窗体关闭前的一些准备工作 |
OnClose | 发生在窗体关闭时 |
双击Form1窗体,在窗体的TForm1::FormCreate(TObject *Sender)成员函数中添加如下代码:
void __fastcall TForm1::FormCreate(TObject *Sender) { ShowMessage("OnCreate..."); }点击Object inspector的事件页,依次为OnShow,OnActivate,FormCloseQuery,FormClose
添加如下代码:
void __fastcall TForm1::FormShow(TObject *Sender)
{
ShowMessage("OnShow...");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormActivate(TObject *Sender)
{
ShowMessage("OnActivate...");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCloseQuery(TObject *Sender, bool &CanClose)
{
ShowMessage("OnCloseQuery...");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
ShowMessage("OnClose...");
}
编译运行该工程,观察程序运行结果。
相关文章推荐
- Servlet3.1应用生命周期事件 (转载)
- jQuery中的常用事件总结
- C#实现子窗体与父窗体通信方法实例总结
- Delphi实现窗体感知鼠标滑过并自动隐藏与显示窗口的方法
- C#实现WinForm捕获最小化事件的方法
- winform实现拖动文件到窗体上的方法
- c#窗体传值用法实例详解
- c#事件使用示例详解
- C#中的事件介绍
- C#简单实现子窗体向父窗体传值的方法
- C#实现窗体间传递数据实例
- C#模拟MSN窗体抖动的实现代码
- C#透明窗体实现方法
- C#实现打开画图的同时载入图片、最大化显示画图窗体的方法
- C#设置MDI子窗体只能弹出一个的方法
- C#禁用双击窗体图标关闭窗体的方法
- C#实现自定义双击事件
- extjs 为某个事件设置拦截器
- jQuery阻止同类型事件小结
- jQuery bind事件使用详解