USEGEAR

导航

RegisterClass注册后getclass总是nil,why?

这个问题有点老。但是有点烦人。

一般流程是 RegisterClass后通过getclass or findclass就会成功。

可是莫名其妙出现总是返回nil。咱也不清楚,网上找了好久,一个久远的帖子解决了问题。为什么?不知道。

RTTI据说可以解决同样的问题,待有时间熟悉。

 

找到了一个办法,随便哪个单元加一个语句就可以了

initialization
ActivateClassGroup(TControl);

但是还是不知道为什么要这样,好像是注册的类所在的TRegGroup不是Activate,所以找不到注册的类,猜测跟程序中所用的控件或者引用的单元有关,在某些单元里调用RegisterClass时,把TControl及子类的所在的RegGroup的Activate变成false,导致自己写的代码中GetClass返回nil

 

posted on 2022-03-31 11:13  USEGEAR  阅读(46)  评论(0编辑  收藏  举报