Excel 将图像从oracle表加载到用户表单';s图像控件 我有一个带有Empno、Ename和Image的oracle表“Employee Details”
表中有50条记录Excel 将图像从oracle表加载到用户表单';s图像控件 我有一个带有Empno、Ename和Image的oracle表“Employee Details”,excel,vba,Excel,Vba,表中有50条记录 使用vba代码,我可以将图像下载到本地文件系统 我无法在Userform上动态添加图像控件并从记录集中填充图像 我想有一个滚动条,以查看所有的50与图像记录。 非常感谢您的帮助。我已根据记录集返回的记录数,成功地将图像控件动态添加到帧对象中 对于R=1到Rs.RecordCount TempFileName = v_ApplPath & "\logs\" & Rs.Fields(3).Value With Strm .
我想有一个滚动条,以查看所有的50与图像记录。
非常感谢您的帮助。我已根据记录集返回的记录数,成功地将图像控件动态添加到帧对象中 对于R=1到Rs.RecordCount
TempFileName = v_ApplPath & "\logs\" & Rs.Fields(3).Value
With Strm
.Type = adTypeBinary
.Open
.Write Rs.Fields(4).Value
.SaveToFile TempFileName, adSaveCreateOverWrite
Set NewImage = Frame1.Controls.Add("Forms.Image.1", "Image" & R)
With NewImage
.Top = ImageTopPos
.Left = ImageLeftPos + 250
.PictureSizeMode = fmPictureSizeModeZoom
.BackStyle = fmBackStyleOpaque
.BorderStyle = fmBorderStyleSingle
.BackColor = &HFFC0C0
.BorderColor = &HFFC0C0
.Width = 50
.Height = 50
.Picture = LoadPicture(TempFileName, 50, 50)
End With
ImageTopPos = NewImage.Top + NewImage.Height + 10
With Frame1
.Visible = True
.ScrollBars = fmScrollBarsVertical
V_ScrollBarHeight = ImageTopPos
.ScrollHeight = V_ScrollBarHeight + 25
End With
.Close
End With
Fsys.DeleteFile (TempFileName)
frmImageLoad.Repaint
Rs.MoveNext
下一个R
TempFileName = v_ApplPath & "\logs\" & Rs.Fields(3).Value
With Strm
.Type = adTypeBinary
.Open
.Write Rs.Fields(4).Value
.SaveToFile TempFileName, adSaveCreateOverWrite
Set NewImage = Frame1.Controls.Add("Forms.Image.1", "Image" & R)
With NewImage
.Top = ImageTopPos
.Left = ImageLeftPos + 250
.PictureSizeMode = fmPictureSizeModeZoom
.BackStyle = fmBackStyleOpaque
.BorderStyle = fmBorderStyleSingle
.BackColor = &HFFC0C0
.BorderColor = &HFFC0C0
.Width = 50
.Height = 50
.Picture = LoadPicture(TempFileName, 50, 50)
End With
ImageTopPos = NewImage.Top + NewImage.Height + 10
With Frame1
.Visible = True
.ScrollBars = fmScrollBarsVertical
V_ScrollBarHeight = ImageTopPos
.ScrollHeight = V_ScrollBarHeight + 25
End With
.Close
End With
Fsys.DeleteFile (TempFileName)
frmImageLoad.Repaint
Rs.MoveNext