不思议命运之恋:VB类型不匹配问题

来源:百度文库 编辑:高考问答 时间:2024/04/28 03:22:26
VB类型不匹配问题
Image1((s Mod 6) - 1).Picture = LoadPicture(rs.Fields(1).Value)

s是Long型变量
rs.Fields(1).Value是文件地址〕
而VB出现错误13'类型不匹配。
请问什么原因

完整代码如下:
Private Sub Command3_Click()
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim StrTemp As String

For q = 0 To 5
Image1(q).Picture = LoadPicture(App.Path & "\pic\none.jpg")
Next q

If Dir(App.Path + "\Mydata.mdb") <> "" Then
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & App.Path & "\mydata.mdb"
End If

cnn.Open
Set rs.ActiveConnection = cnn
StrTemp = "SELECT * FROM photoshop"
rs.CursorType = adOpenStatic
rs.Open StrTemp
strend = rs.RecordCount
ab = s
rs.Move (ab)
ac = s Mod 6
Do While (s <= rs.RecordCount) And (s <= ab + 6)
Image1((s Mod 6) - 1).Picture = LoadPicture(rs.Fields(1).Value)
Label((s Mod 6) - 1).Caption = rs.Fields(3).Value
rs.MoveNext
s = s + 1
Loop
End Sub

插入断点Debug一下看看 rs.Fields(1).Value 是什么

不是太清楚..如果真的只是
Image1((s Mod 6) - 1).Picture = LoadPicture(rs.Fields(1).Value)
的原因,那你改成这样看看
Image1(CInt((s Mod 6) - 1)).Picture = LoadPicture(CStr(rs.Fields(1).Value))

关键看rs.Fields(1).Value是什么类型,如果是字符串的话可能不会出错,如果是图片类型的话肯定是会报错的.