首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

如何往类模块的调用里传RGBQUAD结构体数组做参数

2012-04-10 
怎么往类模块的调用里传RGBQUAD结构体数组做参数模块Public Type RGBQUADrgbBlue As BytergbGreen As Byt

怎么往类模块的调用里传RGBQUAD结构体数组做参数
'模块
Public Type RGBQUAD
rgbBlue As Byte
rgbGreen As Byte
rgbRed As Byte
rgbReserved As Byte
End Type 

'类模块
Public Function x(ByRef g() As RGBQUAD)
Erase g
ReDim g(10)
End Function

'窗体
Private Sub Form_Load()
Me.Show
Dim a As Class1
Set a = New Class1
Dim h() As RGBQUAD
a.x h()
MsgBox UBound(h)
End Sub

现在类模块那个调用的public报错,private才行,可我又必须用public,因为要外部调用并导入一个rgbquad数组,怎么办啊?

[解决办法]
在类模块里面,用户定义类型不能作为参数传递。但在标准模块里面可以:

VB code
'标准模块Option ExplicitPublic Type RGBQUAD    rgbBlue As Byte    rgbGreen As Byte    rgbRed As Byte    rgbReserved As ByteEnd TypePublic Function X(ByRef g() As RGBQUAD)    Erase g    ReDim g(10)End Function 

热点排行