按ACCESS文档描述的存储图片一个中动态的一个是静态的,静态的好做。动态的没有做成功。
上面说需要在表中加入文本字段用来放入图片文件路径。然后在报表中指定等等.我照此做没有成功。请问你们是怎么做成的。
还有就是文档说加入Private sub report_current()
on error resume next
me![imagecontrolname].picture=me![imagepath]
也没有成功
谢谢!
...全文
1465打赏收藏
请问如何在ACCESS中存储图片
按ACCESS文档描述的存储图片一个中动态的一个是静态的,静态的好做。动态的没有做成功。 上面说需要在表中加入文本字段用来放入图片文件路径。然后在报表中指定等等.我照此做没有成功。请问你们是怎么做成的。 还有就是文档说加入Private sub report_current() on error resume next me![imagecontrolname].picture=me![imagepath] 也没有成功 谢谢!
Private Sub Command17_Click()
Dim db As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim StmPic As ADODB.Stream
db.ConnectionString = "provider=microsoft.jet.oledb.4.0;" & "data source=" & App.Path & "\dev.mdb"
db.Open
Set StmPic = New ADODB.Stream
StmPic.Type = adTypeBinary '指定流是二进制类型
StmPic.Open '将数据获取到Stream对象中
StmPic.LoadFromFile ("F:\ABC.JPG") '将选择的图像加载到打开的StmPic中
rs.Open "Photo", db, adOpenDynamic, adLockOptimistic
rs.AddNew
rs!photo = StmPic.Read '从StmPic对象中读取数据
rs.Update
StmPic.Close
MsgBox "保存到数据库成功!"
End Sub
'取出来.
Private Sub Command18_Click()
Dim db As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim StmPic As ADODB.Stream
Dim StrPicTemp As String
db.ConnectionString = "provider=microsoft.jet.oledb.4.0;" & "data source=" & App.Path & "\dev.mdb"
db.Open
Set StmPic = New ADODB.Stream
StmPic.Type = adTypeBinary
StmPic.Open
rs.Open "select * from photo where id=1", db
StmPic.Write rs!photo '写入数据库中的数据至Stream中
StmPic.SaveToFile "D:\TEMP.JPG", adSaveCreateOverWrite
StmPic.Close
rs.Close
Picture1.Picture = LoadPicture("D:\TEMP.JPG")
End Sub