stef56 发表于 2005-5-17 01:25:00

[VBA]请教一个vba二次开发中,关于模块和类模块中的问题

请教各位大虾...如何把已有的CAD程序改写成类模块的形式,其中:<BR>属性:<BR>所有设计所需要的输入参数;<BR>由设计参数推导出来的关于零件结构的参数<BR>方法:<BR>生成零件三维图形;




小虾很急啊,希望各位大虾能够早点关注啊....

evaporated 发表于 2005-5-17 08:52:00

你既然已经把属性和方法都确定了。


就直接改写就可以了啊。


所谓已有的cad程序,是个函数,还是过程?还是一个模块?

今晚打老虎 发表于 2005-5-17 08:57:00

给你个例子学吧


这是类clsTest 下的代码


Option Explicit


Private mWidth As Double


Public Property Get tWidth() As Double<BR>                       tWidth = mWidth<BR>End Property


Public Property Let tWidth(dWidth As Double)<BR>                       mWidth = dWidth<BR>End Property


Public Sub gsDrawLine(mDoc As AcadDocument)<BR>                       Dim vPt1 As Variant<BR>                       Dim vPt2 As Variant<BR>                       Dim oLine As AcadLWPolyline<BR>                       Dim aPts(0 To 3) As Double<BR>                       <BR>                       vPt1 = mDoc.Utility.GetPoint<BR>                       <BR>                       vPt2 = mDoc.Utility.GetPoint(vPt1)<BR>                       <BR>                       aPts(0) = vPt1(0)<BR>                       aPts(1) = vPt1(1)<BR>                       aPts(2) = vPt2(0)<BR>                       aPts(3) = vPt2(1)<BR>                       <BR>                       Set oLine = mDoc.ModelSpace.AddLightWeightPolyline(aPts)<BR>                       <BR>                       If Not oLine Is Nothing Then<BR>                                                       oLine.ConstantWidth = mWidth<BR>                                                       MsgBox TypeName(oLine) &amp; oLine.Handle<BR>                       End If<BR>                       <BR>End Sub<BR>


这是模块modTest下的代码


Option Explicit


Public gTest As New clsTest


Sub Test()<BR>                       gTest.tWidth = 1<BR>                       gTest.gsDrawLine ThisDrawing<BR>End Sub<BR>

stef56 发表于 2005-5-18 00:04:00

谢谢,非常感谢各位大虾.............
页: [1]
查看完整版本: [VBA]请教一个vba二次开发中,关于模块和类模块中的问题