请问如何在VB中用结构体数组作参数传递(我说的是结构体数组),急
比如有一个结构体:
type hb
name as string
sex as string
end ype
能不能给出一个简单的例子,谢谢!
解决者给高分!
问题点数:0、回复次数:11Top
1 楼ChenChen88(虾子脑壳)回复于 2003-05-03 10:24:12 得分 0
dim kk() as hb
调用:
TestSub kk
Sub TestSub(varTemp as Variant)
...
End SubTop
2 楼qianhai(东东)回复于 2003-05-03 14:55:21 得分 0
Function Testtype(aryTemp() as hb)
------
End FunctionTop
3 楼alien120(alien)回复于 2003-05-04 19:19:43 得分 0
dim kk(0 to 9) as hb
比如,我要用Testtype(aryTemp() as hb)显示出kk中的内容,怎么办?Top
4 楼alien120(alien)回复于 2003-05-04 19:57:22 得分 0
qianhai(东东) ,你会VB吗,用户自定义类型是不能作为参数的Top
5 楼rainstormmaster(暴风雨 v2.0)回复于 2003-05-04 21:00:18 得分 0
给你些参考:
http://www.jsj92.com/cxg/VB/VB/db/db9.html
比较麻烦Top
6 楼qbilbo(风之兄)回复于 2003-05-04 21:30:29 得分 0
虽然VB中自定类型不能作为参数?
不信你新建一个窗体,在里面放入下面的代码试试。
Option Explicit
Private Type MyType
A As String
B As Integer
End Type
Private Sub Test(mType() As MyType)
Dim i As Integer
For i = 0 To 9
ReDim Preserve mType(i)
mType(i).A = Trim(Str(i))
mType(i).B = i
Print mType(i).A
Print Trim(Str(mType(i).B + 1))
Next
End Sub
Private Sub Form_Load()
Dim m_type() As MyType
Me.AutoRedraw = True
Test m_type()
End Sub
只有在VB的类模块中不能将自定义参数作为公共过程的参数调用。Top
7 楼bdhh(Silent)回复于 2003-05-05 00:16:31 得分 0
其实很麻烦
一种方法是你将type得定义写到dll里
另一种方法是将当前工程类型改为ActiveX Exe,然后添加一个类模块,在其中进行定义,并将类的Instancing设置为GlobalMultiUseTop
8 楼bdhh(Silent)回复于 2003-05-05 00:17:28 得分 0
与其如此还不如将hb定义成一个类呢Top
9 楼lazycat818(lazycat818)回复于 2003-05-05 02:20:46 得分 0
谁说UDT(用户自定义类型)不能做参数传递?
1。可以将函数放到公共模块中。
2。在类模块或窗体模块中用Friend代替Public,private则本来就可以。Top
10 楼rainstormmaster(暴风雨 v2.0)回复于 2003-05-05 08:52:16 得分 0
'窗体部分,添加一个command,一个listbox
Option Explicit
Private Sub Command1_Click()
Dim kk(9) As hb, i As Integer
For i = 0 To 9
kk(i).name = ChrW(Val("&H" & Str(i + 65)))
kk(i).sex = Mid("男女", (i Mod 2) + 1, 1)
Next
gettype kk, List1
End Sub
'模块部分
Option Explicit
Public Type hb
name As String
sex As String
End Type
Public Sub gettype(mytypevarray() As hb, listobject As ListBox)
Dim i As Integer
For i = 0 To UBound(mytypevarray)
listobject.AddItem mytypevarray(i).name
listobject.AddItem mytypevarray(i).sex
Next
End Sub
Top
11 楼rainstormmaster(暴风雨 v2.0)回复于 2003-05-05 08:53:44 得分 0
但是不能对UDT数组进行后期绑定。Top




