以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- ”照片”列绑定问题求助版主! (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=128524) |
-- 作者:lisheng1971 -- 发布时间:2018/12/9 18:56:00 -- ”照片”列绑定问题求助版主! 1、用1个图片控件是否可以绑定2个不同表中的同为“照片”的列? 2、下面的代码是我依葫芦画瓢写的,水平有限,只能懂个大概,想做到导入完成后会显示“导入完成,共计导入***人”提示,这个代码应该怎么写? 3、是否可以做到象导入文件一样选择照片所在的文件夹?比如:我把“员工照片”文件件放在D或E或F盘,导入的时候到相应的盘中选取即可,而不是象现在只能固定在D盘选? If MessageBox.Show("批量导入照片一般用于人员信息导入之后操作,如果确定已经完成基础数据导入,可以使用本功能" & vbcrlf & "系统默认会在程序的Attachments文件夹内搜索文件!!","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Warning) = dialogresult.ok Then If CurrentTable.Rows.Count > 0 Then Dim lj As String = "D:\\员工照片\\" For Each dr As Row In Tables("证书编号表").Rows Dim str1 As String =dr("身份证号码") & "-" & dr("姓名") & ".jpg" If FileSys.FileExists(lj & str1) = True Then dr("照片") = dr("身份证号码") & "-" & dr("姓名") & ".jpg" Else MessageBox.Show("未找到:" & lj & str1) dr("照片") = Nothing End If Next Else MessageBox.Show("当前表没有数据,无法执行该操作!","错误",MessageBoxButtons.OK,MessageBoxIcon.Error) End If End If |
-- 作者:有点甜 -- 发布时间:2018/12/9 21:11:00 -- 1、可以。但是不能同时绑定。你可以在某个时候绑定某表,某个时候绑定另一个表
http://www.foxtable.com/webhelp/scr/1860.htm
2、3、
If MessageBox.Show("批量导入照片一般用于人员信息导入之后操作,如果确定已经完成基础数据导入,可以使用本功能" & vbcrlf & "系统默认会在程序的Attachments文件夹内搜索文件!!","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Warning) = dialogresult.ok Then |
-- 作者:lisheng1971 -- 发布时间:2018/12/9 22:35:00 -- 谢谢版主!我看帮助依样写了如下导入代码,图片控件没做任何绑定,两表都可以正常导入,但图片控件没任何显示,这要怎么做? Dim tb As WinForm.TabControl = e.Form.Controls("TabControl1") Dim pg As WinForm.TabPage = tb.SelectedPage Dim 表 As String = "" If tb.SelectedPage.Text = "报名登记汇总" Then 表 = "鉴定管理表" Forms("鉴定管理").Controls("PictureBox1").BindingField = "鉴定管理表.照片" ElseIf tb.SelectedPage.Text = "证书编号汇总" Then 表 = "证书编号表" Forms("鉴定管理").Controls("PictureBox1").BindingField = "证书编号表.照片" End If If MessageBox.Show("即将导入员工照片,请确认数据格式是否正确!!" & vbcrlf & "系统默认会在程序的Attachments文件夹内搜索文件!!","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Warning) = dialogresult.ok Then If CurrentTable.Rows.Count > 0 Then Dim dlg As New FolderBrowserDialog If dlg.ShowDialog = DialogResult.Ok Then Dim lj As String = dlg.SelectedPath & "\\" Dim count As Integer = 0 For Each dr As Row In Tables(表).Rows Dim str1 As String =dr("身份证号码") & "-" & dr("姓名") & ".jpg" If FileSys.FileExists(lj & str1) = True Then dr("照片") = dr("身份证号码") & "-" & dr("姓名") & ".jpg" count += 1 Else dr("照片") = Nothing End If Next msgbox("共导入:" & count & "人") End If Else MessageBox.Show("当前表没有数据,无法执行该操作!","错误",MessageBoxButtons.OK,MessageBoxIcon.Error) End If End If |
-- 作者:有点甜 -- 发布时间:2018/12/9 22:44:00 -- 要拷贝到项目文件夹才行的,如
Dim tb As WinForm.TabControl = e.Form.Controls("TabControl1")
Dim pg As WinForm.TabPage = tb.SelectedPage
Dim 表 As String = ""
If tb.SelectedPage.Text = "报名登记汇总" Then
表 = "鉴定管理表"
Forms("鉴定管理").Controls("PictureBox1").BindingField = "鉴定管理表.照片"
ElseIf tb.SelectedPage.Text = "证书编号汇总" Then
表 = "证书编号表"
Forms("鉴定管理").Controls("PictureBox1").BindingField = "证书编号表.照片"
End If
If MessageBox.Show("即将导入员工照片,请确认数据格式是否正确!!" & vbcrlf & "系统默认会在程序的Attachments文件夹内搜索文件!!","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Warning) = dialogresult.ok Then
If CurrentTable.Rows.Count > 0 Then
Dim dlg As New FolderBrowserDialog
If dlg.ShowDialog = DialogResult.Ok Then
Dim lj As String = dlg.SelectedPath & "\\"
Dim count As Integer = 0
Dim pth As String = ProjectPath & "Attachments\\"
For Each dr As Row In Tables(表).Rows
Dim str1 As String =dr("身份证号码") & "-" & dr("姓名") & ".jpg"
If FileSys.FileExists(lj & str1) = True Then
FileSys.CopyFile(lj & str1, pth & dr("身份证号码") & "-" & dr("姓名") & ".jpg")
dr("照片") = dr("身份证号码") & "-" & dr("姓名") & ".jpg"
count += 1
Else
dr("照片") = Nothing
End If
Next
msgbox("共导入:" & count & "人")
End If
Else
MessageBox.Show("当前表没有数据,无法执行该操作!","错误",MessageBoxButtons.OK,MessageBoxIcon.Error)
End If
End If
|
-- 作者:lisheng1971 -- 发布时间:2018/12/9 23:18:00 -- ![]() ![]() ![]() |
-- 作者:有点甜 -- 发布时间:2018/12/10 9:09:00 -- 以下是引用lisheng1971在2018/12/9 23:18:00的发言:
![]() ![]() ![]()
那就改成这样
Dim tb As WinForm.TabControl = e.Form.Controls("TabControl1")
Dim pg As WinForm.TabPage = tb.SelectedPage
Dim 表 As String = ""
If tb.SelectedPage.Text = "报名登记汇总" Then
表 = "鉴定管理表"
Forms("鉴定管理").Controls("PictureBox1").BindingField = "鉴定管理表.照片"
ElseIf tb.SelectedPage.Text = "证书编号汇总" Then
表 = "证书编号表"
Forms("鉴定管理").Controls("PictureBox1").BindingField = "证书编号表.照片"
End If
If MessageBox.Show("即将导入员工照片,请确认数据格式是否正确!!" & vbcrlf & "系统默认会在程序的Attachments文件夹内搜索文件!!","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Warning) = dialogresult.ok Then
If CurrentTable.Rows.Count > 0 Then
Dim dlg As New FolderBrowserDialog
If dlg.ShowDialog = DialogResult.Ok Then
Dim lj As String = dlg.SelectedPath & "\\"
Dim count As Integer = 0
For Each dr As Row In Tables(表).Rows
Dim str1 As String =dr("身份证号码") & "-" & dr("姓名") & ".jpg"
If FileSys.FileExists(lj & str1) = True Then
dr("照片") = lj & str1
count += 1
Else
dr("照片") = Nothing
End If
Next
msgbox("共导入:" & count & "人")
End If
Else
MessageBox.Show("当前表没有数据,无法执行该操作!","错误",MessageBoxButtons.OK,MessageBoxIcon.Error)
End If
End If
|
-- 作者:lisheng1971 -- 发布时间:2018/12/10 18:54:00 -- 谢谢版主!虽然对这段代码还是没有完全理解。现在这样2个表里到是都可以把照片随意导入,但图片控件(picturebox1,没绑定任何表,没没置图片存放目录)还是没有显示,其中1个表能看到导入了照片的文件名,但点开看不到照片,另一个表能看到,2个表的照片列都是备注型格式,这个为什么呢? |
-- 作者:有点蓝 -- 发布时间:2018/12/10 20:12:00 -- 图片框必须绑定列才能显示列图片。 如果使用的是绝对路径,可以在表事件自己写代码打开:http://www.foxtable.com/webhelp/scr/2637.htm |
-- 作者:有点甜 -- 发布时间:2018/12/11 9:50:00 -- 以下是引用lisheng1971在2018/12/10 18:54:00的发言:
谢谢版主!虽然对这段代码还是没有完全理解。现在这样2个表里到是都可以把照片随意导入,但图片控件(picturebox1,没绑定任何表,没没置图片存放目录)还是没有显示,其中1个表能看到导入了照片的文件名,但点开看不到照片,另一个表能看到,2个表的照片列都是备注型格式,这个为什么呢?
做个实例发上来测试吧。 |