问一下VB里面的类模块是如何调用的啊??我在工程中用了一个analysis的类模块负责计算功能,里面有一个属性是VoltDU,此外还有AmpereDu,peak等等的功能.analysis已经设计好了.我在form文件开始的时候定义了: Public mCalculation As analysis
就是说已经定义了analysis的一个对象,
然后在计算的过程里面有这样一个语句,就是: mCalculation.VoltDU = VoltDU200mV
VoltDU200mV是一个常数.也就是说对这个属性赋值.但是运行的时候这一句会报:object variable or with block variable not set.
是什么原因呢??我觉得既然已经写好analysis的类模块,而且也已经定义了对象analysis,那就可以对对象赋值了啊!望大侠赐教!!谢谢谢谢!
就是说已经定义了analysis的一个对象,
然后在计算的过程里面有这样一个语句,就是: mCalculation.VoltDU = VoltDU200mV
VoltDU200mV是一个常数.也就是说对这个属性赋值.但是运行的时候这一句会报:object variable or with block variable not set.
是什么原因呢??我觉得既然已经写好analysis的类模块,而且也已经定义了对象analysis,那就可以对对象赋值了啊!望大侠赐教!!谢谢谢谢!
就是说已经定义了analysis的一个对象
呵呵,问题的原因就出在你的定义,你只是进行了定义,而没有对对象进行绑定,改为:
Public mCalculation As new analysis
即可
有两种方法呀
1,在你定义后用set方法
Set mCalculation = New analysis
2、开始就定义好Public mCalculation As new analysis
不过很奇怪的是,原来一个人编的里面就没有new,就是直接用的Public mCalculation As analysis好像也是可以运行的啊??
我现在自己重新做的时候怎么就不可以呢??
vb的类直接使用应该是不行的,其它语言有静态方法,则可以不实例话。
Public mCalculation As analysis
set mCalculation = new analysis
完成,不能说人类正在拉屎,而是shanquan1981正在拉屎。所以必须先实例化一对象,这个在VB里面是New 才行。没有New是万万不行的(当然
类的静态方法等另当别论)