在帮助文件中的代码如下:
Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
lvw.StopRedraw() '暂停绘制
lvw.Rows.Clear() '清除原来的行
lvw.Images.Clear() '清除原来的图片
lvw.View = ViewMode.LargeIcon
'显示模式为大图标
lvw.Images.LargeSize = New
Size(130,150) '定义大图标尺寸
For Each dr As DataRow In DataTables("员工").DataRows
'从数据表中提取数据
Dim Key As String = dr("照片") '获取此员工的照片文件
lvw.Images.AddLargeImage(Key, Key) '添加照片,直接用文件名作为图片键值
Dim vr As WinForm.ListViewRow = lvw.Rows.Add() '增加一行
vr.Text = dr("姓名") '设置标题
vr.ImageKey = Key
'设置图片键值
Next
lvw.ResumeRedraw()
可以获取直接显示保存在本地的员工照片
但是采用二进制列保存的照片如何进行显示呢?
目前有员工信息,物料附件两表,
求解!
下面代码是实现在窗体中的图片管理显示对应二进制图片内容的 求整合!
Dim pbx As WinForm.PictureBox = Forms("员工信息管理").Controls("PictureBox1")
If e.Sender.ComboList = ""
Return
End If
If Tables("员工信息").Current Is Nothing Then
pbx.Image = Nothing
Else
' 判断选择的是不是 图片格式,如果不是 则不执行代码
Dim dt As DataRow = DataTables("物料附件").SQLFind("附件名称='" & e.Sender.SelectedItem & "' and 物料编码='" & Tables("员工信息").Current("编号") & "' And [附件类别] = '员工信息'")
If dt IsNot Nothing '必须要判断不然 报错
Dim nm() As String = e.Sender.SelectedItem.split(".")
Dim tpjh As String = "bmp,jpg,png,gif"
If tpjh.Contains(nm(nm.Length-1)) Then '如果是图片格式则显示
pbx.Image = dt.SQlLoadImage("附件内容") '从后台提取照片并显示
Else
pbx.Image = Nothing
End If
End If
End If
[此贴子已经被作者于2015/5/14 23:49:28编辑过]