哎,CSDN解决问题的速度大不如从前了

解决方案 »

  1.   

    我说的是控件属性的接口定义,不是类的定义或结构的定义,在VC中定义控件的属性我使用
    CLASS WIZARD,这个工具无法定义控件的多层属性。
    希望高手门的建议能详细一点,谢谢
      

  2.   

    先创建一个包含2级属性的class
    菜单Insert | New Class
    Class Type = MFC Class
    Name = 自己定义
    Base class = CCmdTarget //必需
    Automation 选 Createable by type ID然后在ClassWizard里 的Automation页 ,Class name选择这个class,定义二级属性
    第三步:同上方法,给你的控件增加一个LPDISPATCH类型的属性最后:在你的控件初始化代码里,为这个属性创建那个二级属性类最最后:如果你的控件是给VB调用,并且希望这个属性的类型不用LPDISPATH(在VB里是Object),希望直接是那个二级class(这样在VB里可以自动出属性列表),就要手工改工程中的ODL文件。在library定义里面的最上方,紧跟着importlib下面,加入一行:
    dispinterface 二级属性class的interface name;
    然后找到控件属性的地方,把IDispatch* 改成二级属性class的interface *good luck
      

  3.   

    不用CLASSWIZAD,手工写这些代码不就得了
      

  4.   

    我的属性分类下:一个file(patient,CT_image,study......)。
    Patient(name,birth,addr,phone。。);
    CT_image(ID,date,size,num....);
    study(one,two,three........);
    ..........
    假如不做成二级属性的话,会很混乱的,而且不同类型的file,它们之间的定义会交叉,互相覆盖,比如file2(patient,MR_image,study),图像层(CT,MR)不一样
      

  5.   

    TO taolei,哎,真是悲哀,越做越觉得自己是个笨蛋了。
    我做到:然后在ClassWizard里 的Automation页 ,Class name选择这个class,定义二级属性。
    这步,已经无从下手了,救救我吧,怎么叫定义二级属性啊?还有什么叫给这个属性创建二级属性类啊?越看越糊涂了,555555~~~~~
      

  6.   

    mail敬上:[email protected]
    有代码的话,麻烦送送,谢谢谢谢,不胜感激
      

  7.   

    简单明了的把问题说明白就是:我要定义自己的控件属性,像通用控件 button1.font.bold 这样的两级属性表,有办法吗?求代码吗,谢谢([email protected])
      

  8.   

    在VC中有button1.font.bold 这种写法吗?
      

  9.   

    例:
      字体属性:
          下级属性:色彩.
                   字体大小.
                   粗细.
                   字体(宋体).
                   其它属性.
    看VCL有关字体属性定义的源代码试试看.
      

  10.   

    定义二级属性是说给那个二级属性的class增加automation属性,如果这个都不会的话,先不要想什么二级属性了,先把基本的控件写熟练了。
      

  11.   

    to taolei:
    在classwizard里面给控件添加属性、事件、方法我都知道啊。只是你给我的建议字面意思让我有点模糊,看了好久才弄懂,嘿嘿