程序中使用第三方控件(只有部分pas文件,大部分文件都是以dcu形式发布的),把控件拖到界面上使用没问题。
但是现在想在代码中动态创建控件,并给各个属性赋值,其中有个属性是枚举类型,但是由于没有pas文件,所以找不到这个枚举类型的定义,怎么办啊 

解决方案 »

  1.   

    举例  DBGrid1 的 Options 属性,假定我们不知道它的枚举类型的定义,在语句中:
      DBGrid1.Options:=[0];
    这样写的时候,编译就出错提示为:Incompatible types:'TDBGridOption' and 'Integer'.那么,通过这提示,就可获知它是 TDBGridOption 类型了,赋值时,就可以这样子:
      DBGrid1.Options:=DBGrid1.Options+[TDBGridOption(0)];

      DBGrid1.Options:=DBGrid1.Options-[TDBGridOption(0)];当这样子: 
      DBGrid1.Options:=DBGrid1.Options-[TDBGridOption(13)]; 
    编译时,提示:Constant expression violates subrange bounds. 这说明13已经超出它的范围了,而:
      DBGrid1.Options:=DBGrid1.Options-[TDBGridOption(12)]; 
    没这提示,讲明它的最大值就是 12 了。