为何我用button调出一个form在里面的edit输入字符.当我关闭后再调用此form时,字符还是在edit控件里面.谢谢!
为何我用button调出一个form在里面的edit输入字符.当我关闭后再调用此form时,字符还是在edit控件里面.谢谢! 问题点数:0、回复次数:8Top
1 楼sunliwen780502(孙立文)回复于 2004-09-03 12:35:34 得分 0
在窗体的OnCreate事件里写
Edit1->Text = "";
就可以了.Top
2 楼kmfangxun()回复于 2004-09-03 12:36:34 得分 0
当你关闭后没有释放form,再调用此form时当然Edit中有数据.
关闭后释放form,再动态生成form就不会了.Top
3 楼kmfangxun()回复于 2004-09-03 12:38:03 得分 0
或者在Form的OnClose事件里:
Edit1->Text="";Top
4 楼shangxingu(shangxingu)回复于 2004-09-03 12:43:13 得分 0
其实你在关闭的时候,因为你关闭的不是主窗体,所以只是不显示出来而已,和隐藏没什么区别,因为窗体的内容仍在内存中,这当然是出于效率考虑的,因为你可以随时显示它,而不用重新构建窗体。
你可以用new 的方法试试看。
假设你要显示Form2。
我估计你是这样的。
Form2->Show();
可以改成这样
TForm2 *Form2=new TForm2(this);
Form2->Show();
但是你就要修改Project|Options...
然后单击Forms标签,把Form2从Auto-create forms移到Available forms。
Top
5 楼kwokwinglau(每天前进1%)回复于 2004-09-03 19:15:09 得分 0
销毁...Top
6 楼jiangchaofeng(枫之悠然)回复于 2004-09-04 10:49:37 得分 0
在Form的OnShow事件里写
Edit1->Text = "";
或者在Form的OnClose事件中写:
Edit1->Text = "";
Top
7 楼binbin(破坏分子)回复于 2004-09-04 11:11:54 得分 0
上面说的都对,从效率和安全考虑还是不要用new,用OnShow事件.注意二楼的OnCreate是不对的,这只会在窗体构建时被执行一次.Top
8 楼befree(似有似无)回复于 2004-09-04 11:49:55 得分 0
onclose里面Action=caFree;Top




