vb.net2010从ACCESS的OLE字段读出图片显示到PictureBox控件上
vb.net2010从ACCESS的OLE字段读出图片显示到PictureBox控件上请给出确定能运行成功的一段代码另外问一下,ACCESS的OLE字段能保存JPG图片吗...
vb.net2010从ACCESS的OLE字段读出图片显示到PictureBox控件上
请给出确定能运行成功的一段代码
另外问一下,ACCESS的OLE字段能保存JPG图片吗?
如果可以的话怎么在ACCESS中手动保存,怎么用VB.net读取显示到控件上
目前的代码如下,但运行到最后一行会提示“参数无效”
Dim pic() As Byte = CType(tbl.Rows(0).Item("img1"), Byte())
Dim mem As New MemoryStream(pic)
pic1.Image = Image.FromStream(mem)
把CType改成DirectCast也不行。
这个是我打错了,我改成AS也不行。
一楼的办法还是不行。
我把语句改成 select img1 from solution where id=1还是不行
我图上的文件长度明明是6262,改了select语句后长度还是6262,说明这个图片的长度就是6262啊。 展开
请给出确定能运行成功的一段代码
另外问一下,ACCESS的OLE字段能保存JPG图片吗?
如果可以的话怎么在ACCESS中手动保存,怎么用VB.net读取显示到控件上
目前的代码如下,但运行到最后一行会提示“参数无效”
Dim pic() As Byte = CType(tbl.Rows(0).Item("img1"), Byte())
Dim mem As New MemoryStream(pic)
pic1.Image = Image.FromStream(mem)
把CType改成DirectCast也不行。
这个是我打错了,我改成AS也不行。
一楼的办法还是不行。
我把语句改成 select img1 from solution where id=1还是不行
我图上的文件长度明明是6262,改了select语句后长度还是6262,说明这个图片的长度就是6262啊。 展开
2个回答
展开全部
这是vb2005的代码,你试一下,这是我以前做的一段代码,从库中读取到显示。
olecon = New OleDbConnection(constr)
olecon.Open()
Dim comm As New OleDbCommand("select 照片 from 表 where name='李三', olecon)
Dim reader As OleDbDataReader = comm.ExecuteReader
reader.Read()
Dim photofile() As Byte
photofile = reader.GetValue(0)
Dim streamph As New MemoryStream(photofile)
PictureBox1.Image = Image.FromStream(streamph)
这段代码是我从我做的小软件中截出来的,我在2005中就用着,2005是通过的,不知道加到2010中能否执行。
-------------------------------
根据你的发的图,我看了,好像你从库中取出的不是一条记录呀,我的代码只能取一条记录的情况,你的明显取出多条记录,代码只认最后一条,你的文件长度为0,当然不行了
select 照片 from 表 where name='李三',这条语句只能取出单条记录,且ole字段中确定有文件存在的,而且是图片格式才能显示
-------------------------------------------------------
Dim streamph As New MemoryStream(photofile)
你的是 Dim streamph = New MemoryStream(photofile)
这句你的和我的不一样,是不是这里的问题,2010没用过,要是还不行,我也不知道了
olecon = New OleDbConnection(constr)
olecon.Open()
Dim comm As New OleDbCommand("select 照片 from 表 where name='李三', olecon)
Dim reader As OleDbDataReader = comm.ExecuteReader
reader.Read()
Dim photofile() As Byte
photofile = reader.GetValue(0)
Dim streamph As New MemoryStream(photofile)
PictureBox1.Image = Image.FromStream(streamph)
这段代码是我从我做的小软件中截出来的,我在2005中就用着,2005是通过的,不知道加到2010中能否执行。
-------------------------------
根据你的发的图,我看了,好像你从库中取出的不是一条记录呀,我的代码只能取一条记录的情况,你的明显取出多条记录,代码只认最后一条,你的文件长度为0,当然不行了
select 照片 from 表 where name='李三',这条语句只能取出单条记录,且ole字段中确定有文件存在的,而且是图片格式才能显示
-------------------------------------------------------
Dim streamph As New MemoryStream(photofile)
你的是 Dim streamph = New MemoryStream(photofile)
这句你的和我的不一样,是不是这里的问题,2010没用过,要是还不行,我也不知道了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询