vb 单击事件,在文本框输入ID编号显示access数据库中对应编号的图片,图片用ole存储的 ,可以实现吗
若以下回答无法解决问题,邀请你更新回答
1个回答
展开全部
可以的,你是VB什么版本?
更多追问追答
追答
首先需要在VB菜单 [工程] - [引用],
勾选 Microsoft ActiveX Data Object 2.X Library
这里2.X是表示有好几个版本,都可以使用,尽可能尝试高版本,
然后[确定]。
假设窗体上有 文本框 Text1 和 按钮 Command1,代码如下
说明:我这里是把图片显示在 Image 控件,你可以修改成Picture控件。
Private Sub Command1_Click()
Dim iRe As New ADODB.Recordset
Dim iStm As New ADODB.Stream
iStm.Type = adTypeBinary '二进制模式
Dim iConc As New ADODB.Connection
Dim iConcstr As String
iConc.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\数据库.mdb;Persist Security Info=False"
iRe.Open "Select * From 数据表 Where ID = " & Text1.Text, iConc, adOpenKeyset, adLockOptimistic
iStm.Mode = adModeReadWrite
iStm.Type = adTypeBinary
iStm.Open
iStm.Write iRe("image")
'这里注意了,每次把数据库里的数据写到磁盘上的JPG文件 test1.jpg,然后把该文件显示到图片框
'所以如果当前目录下存在test1.jpg,会报一个文件写入失败的错误.必须先删除该临时文件
If Dir(App.Path & "\test1.jpg", vbNormal) <> "" Then
Kill App.Path & "\test1.jpg"
iStm.SaveToFile App.Path & "\test1.jpg"
Else
iStm.SaveToFile App.Path & "\test1.jpg"
End If
'把该文件显示到图片框
Image1.Picture = LoadPicture(App.Path & "\test1.jpg ")
End Sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询