在codproject上下的atl表格控件及源代码。
该控件在vb中调用没问题。可我加入vc中怎么就出问题了?怎么加入阿?
提示:
The Active X contol cannot be instantiated
"Grid Class" is not a valid ActiveX control.
It is missing a required interface.下面是atl表格控件的源代码,及vb测试该控件的源代码。
http://www.vchelp.net/ASP/cdf_pic/200410/subject_1_127097.rar怎么解决啊。

解决方案 »

  1.   

    在对话框模板资源上右键-->"Insert ActiveX..."。
    建议在VC中就不要使用ActiveX,直接把源代码拿过来编译,这样效率高些。
      

  2.   

    下载你的程序以后,将原来的ATLNewGrid.dll设置为ATLNewGrid.ocx ,将程序编译为ATLNewGrid.ocx ,注册以后使用Tool==》ActiveX Control Test Container 测试没有什么错误提示啊!
      

  3.   

    ColderRain(一切尽在不言中) :
    那怎么修改啊?vcleaner(我没做大哥已经很久了.......) 
    测试确实没错,可加入vc工程就出错了。vb中用也没问题。
      

  4.   

    再次仔细看了一下控件的源代码,好像是没有提供标准的IDispatchImpl接口。但是它实现和OLE的一些接口。也许就是因为这个才不能在VC中调用的吧!
      

  5.   

    我给你想了个好办法:
    因为它可以在VB下使用,所以你可以使用VB生成一个控件,在控件中插入这个控件,然后根据它提供的VB例子,将一些对Grid的操作封装到你的控件中,然后就可以使用你这个控件代替它了,如果还有什么不明白,给我发消息!呵呵,我试过是可以的。呵呵
      

  6.   

    上面的封装其实就是COM中所说的包容。呵呵,其实就是组件调用组件,不过这里的还包含了界面的操作而已!
      

  7.   

    我也碰到过你说的提示,不过我的原因是将*.clw删除造成的,等我再加上它就好了,你也可以试试先删除*.clw,然后再产生它试试。
      

  8.   

    我也下过,修改atl表格控件及源代码后可用。需要添加两个方法,分别实现对表格控件的单元格进行赋值和读取。
      

  9.   

    To: vcleaner(我没做大哥已经很久了.......) 
    你的转换成vb的方法我采用不了,我对vb一点不懂。不过非长感谢你。
    要是能直接解决问题就好了。
      

  10.   

    借用这地方问个问题。
    怎样把一负的浮点数如-1.30,转化成一个五位的ASCII串。(对应上面各个)
    请各位帮忙给解决一下
    是不是用Ssprintf( )?
      

  11.   

    http://www.vchelp.net/ASP/cdf_pic/200410/subject_1_127097.rar