读书人

窗体的OnActive?该如何处理

发布时间: 2012-03-03 15:33:03 作者: rapoo

窗体的OnActive??


1:新建一个Application.
在主窗体Form上,添加一个Label.

2:在窗体的OnActive响应中,添加如下代码:
void __fastcall TForm::FormActivate(TObject *Sender)
{
static int m=0;
m++;
Labe-> Caption=IntToStr(m);
}

当运行程序后,Label处显示1.
然后点击记事本,再点击该主窗口,激活主窗口,此时应该调用窗体OnActive函数,m变为2;
可是此时Label处还是显示1,不管如何切换窗口,都是显示1,为什么??
窗体被激活后,为什么没执行FormActivate呢????

[解决办法]
因为你窗体就有一个,在新增一个窗体,在两个窗体之间切换就可以了!
[解决办法]
请区分Form的Active与Application的Active
[解决办法]
怎么区分??程序没Active不等于Form没Active
所以在程序间切换,不发生Form Active
[解决办法]
m 不是公共变量,在这函数内部声明并初始化

读书人网 >C++ Builder

热点推荐