我刚学ATL,现在想用ATL做一个控件,要求可以改变控件背景色、边框色,还要画上指定类型的网格,颜色也要可变,对于背景色、边框色我选择了stock属性,对于网格类型及其颜色,新增加了属性:long型和OLE_COLOR型,但问题因此产生:1、我用VC++6.0 制作该控件,编译后,用VB6.0建一个窗体,添加该控件,第一次运行前可以编辑该控件的各种属性,但只要一运行就会出现错误,提示:“System Error &H80004005(-2147467259),未指定的错误”,确定后,窗体也无法编辑了,只有关闭工程。怪哉,百思不得其解。2、由于前一个问题,我只好用VS7.0来做这个控件,还好,控件做成后,可以在VB6中添加、编辑并运行,但同时出现的问题是,在编辑状态下可以通过属性表设定控件对象的各种属性,包括背景色、边框色、网格类型、网格色等,但是对于stock类型的属性如背景色、边框色等,在运行程序时其属性和编辑状态下保持一致,即背景设定为蓝色,运行时控件即为蓝色,而自己添加的属性则不行,编辑时设定的属性,运行时全部失效,又恢复到缺省值,不知这是何故,怎样解决。以上两问题,还望高手赐教,谢谢!!!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货