含有 MSFlexGrid等作为传递参数的过程,在编译.引用时,先定义了后
再直接 类名.gongdandata(MSFlexGrid2) 却报错??DLL类时报报错:提示private 对象模块不能作为参数/公共过程的返回类型,公共数据成员或公共用户定义类型字段在公共的对象中使用 ??在ActiveX DLL,项目要怎么定义???如何解决,代码如下:是不是还要声明什么控件类型???Public Sub gongdandata(MSF1 As MSFlexGrid)Dim j As Integer
Dim i As Integer
Dim mrc1 As ADODB.Recordset
Set mrc1 = sl(Trim(txtsql))
..........
再直接 类名.gongdandata(MSFlexGrid2) 却报错??DLL类时报报错:提示private 对象模块不能作为参数/公共过程的返回类型,公共数据成员或公共用户定义类型字段在公共的对象中使用 ??在ActiveX DLL,项目要怎么定义???如何解决,代码如下:是不是还要声明什么控件类型???Public Sub gongdandata(MSF1 As MSFlexGrid)Dim j As Integer
Dim i As Integer
Dim mrc1 As ADODB.Recordset
Set mrc1 = sl(Trim(txtsql))
..........
解决方案 »
- 请问怎么下载youtube,土豆,k5k6等网站的视频?
- api写的菜单名字在哪定义?
- 如何实现 mousemoveOut事件?
- 为什么我用Winsock在Internet上面传数据,500K的东西传到36K就停止了?
- 软件一发布,糟反编译,大家一起来讨论一下防止反编译的问题.
- 超级特大新闻:
- 用CSDN可用分换QQ
- 文件上传后调用杀软进行杀毒
- 如何在Win2k中禁止Guest用户在本地(A机器)登录,但是可以在局域网的其他机器(B机器)登录本机(A机器)?
- 有谁知道VB5.0或VB6.0那儿有下载!小妹谢了!
- 做IT呢还是做开发呢? 未来就是这模样么...
- 像素到底是什么意思?看到"鼠标移动**像素",貌似是距离的意思;但"手机**像素"又类似是图片清晰度 质量 精度
bhsq是类名,类的工程名 bhsq1:
Public Function sl(ByVal sql As String) As ADODB.Recordset
Dim mycon As ADODB.Connection
Dim rst As ADODB.Recordset
Set mycon = New ADODB.Connection
mycon.ConnectionString = "rovider=sqloledb;server=.;Database=sxcpmc;Uid=sawd=;"
mycon.Open
Dim stokens() As String
Set rst = New ADODB.Recordset
rst.Open Trim(sql), mycon, adOpenKeyset, adLockOptimistic
Set sl = rst
End Function单独封装上面的代码,能在程序使用
Dim bhs As New bhsq '用里面的类名,而不是用类的工程名
Set mrc1 = bhs.sl(Trim(txtsql))
Set bhs = Nothing '能正常使用'
-----------------------------
但是,再想封装以代码就报错了.
错误提示:提示private 对象模块不能作为参数/公共过程的返回类型,公共数据成员或公共用户定义类型字段在公共的对象中使用 Public Sub gongdandata(ByVal MSF1 As MSFlexGrid) '预览生产单gongdan窗体时用到
Dim i As Integer
Dim mrc1 As ADODB.Recordset Set mrc1 = sl(Trim(txtsql))
If mrc1.EOF = False Then
mrc1.MoveFirst
MSF1.RowHeightMin = 410
MSF1.CellAlignment = 0
With MSF1
.Rows = 1
Do While Not mrc1.EOF
.Rows = .Rows + 1
For i = 1 To mrc1.Fields.Count
.TextMatrix(.Rows - 1, i - 1) = FormatNumber(mrc1.Fields(i - 1), 3, -1)
Next i
mrc1.MoveNext
Loop
mrc1.Close
End With
End If
End Sub
这个不能用byval了,去掉就行
这个不能用byval了,去掉还是不行,还是报同样的错
提示private 对象模块不能作为参数/公共过程的返回类型,公共数据成员或公共用户定义类型字段在公共的对象中使用 ??为何???