▲疯▼ 两天找一个怪错误:关于 TFrame 和 TActionList.(50分)

  • 主题发起人 主题发起人 zyxip
  • 开始时间 开始时间
Z

zyxip

Unregistered / Unconfirmed
GUEST, unregistred user!
[:(]
程序中有一个TFrame ,上面放一TEdit和TActionList。
在程序中动态创建TFrame,TFrame.Parent指定为一TabSheet
有一Button1可以删除掉这个TabSheet
-----------------------------------------------------
现在先生成一个TabSheet页,然后将TabSheet删除;然后在第二次生成TabSheet,并在TFrame中的Edit中录入,这时出错了,而在TFrame中没有自己写一行代码。
将ActionList删除掉以后就不出错了。
---------------------------------
在上例中如果动态生成一个Form,将TFrame.Parent指定为Form,然后在进行以上的操作就不会出错。
请问大家有合理的解释吗??大家对TFrame 和 TActionList 是如何使用的。
 
可能是因为当创建的TFRAme的实例的父控件TABSHEET被删除时,他也会被释放,所以就会出错,不行你可以试试,在删除前先这样子做,先生成一个新的TABSHEET页面然后TFRame1.parent := TABSHEET{新生成的页面},然后才删除原来的页面,这样就不会出错啦
 
肯定同父控件有关,我用过tabsheet上生成frame但是没有ActionList,所以考虑肯定是ActionList出了一些问题,所以检查一下从属关系
 
后退
顶部