Foxtable(狐表)用户栏目专家坐堂 → ”照片”列绑定问题求助版主!


  共有2401人关注过本帖树形打印复制链接

主题:”照片”列绑定问题求助版主!

帅哥哟,离线,有人找我吗?
lisheng1971
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:219 积分:1687 威望:0 精华:0 注册:2016/4/14 9:45:00
”照片”列绑定问题求助版主!  发帖心情 Post By: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



 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By: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
    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
                    MessageBox.Show("未找到:" & lj & str1)
                    dr("照片") = Nothing
                End If
            Next
            msgbox("共找到:" & count)
        End If
    Else
        MessageBox.Show("当前表没有数据,无法执行该操作!","错误",MessageBoxButtons.OK,MessageBoxIcon.Error)
    End If
End If


 回到顶部
帅哥哟,离线,有人找我吗?
lisheng1971
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:219 积分:1687 威望:0 精华:0 注册:2016/4/14 9:45:00
  发帖心情 Post By: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

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By: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
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:219 积分:1687 威望:0 精华:0 注册:2016/4/14 9:45:00
  发帖心情 Post By:2018/12/9 23:18:00 [只看该作者]

图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看这样的话Attachments文件夹那会随照片数增多而越来越大,项目要是开发完成发布后,不晓得还会不会有这个文件夹存在?那还不如固定在某个盘的某个文件夹中。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/12/10 9:09:00 [只看该作者]

以下是引用lisheng1971在2018/12/9 23:18:00的发言:
图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看这样的话Attachments文件夹那会随照片数增多而越来越大,项目要是开发完成发布后,不晓得还会不会有这个文件夹存在?那还不如固定在某个盘的某个文件夹中。

 

那就改成这样

 

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
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:219 积分:1687 威望:0 精华:0 注册:2016/4/14 9:45:00
  发帖心情 Post By:2018/12/10 18:54:00 [只看该作者]

谢谢版主!虽然对这段代码还是没有完全理解。现在这样2个表里到是都可以把照片随意导入,但图片控件(picturebox1,没绑定任何表,没没置图片存放目录)还是没有显示,其中1个表能看到导入了照片的文件名,但点开看不到照片,另一个表能看到,2个表的照片列都是备注型格式,这个为什么呢?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112401 积分:572273 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/12/10 20:12:00 [只看该作者]

图片框必须绑定列才能显示列图片。

如果使用的是绝对路径,可以在表事件自己写代码打开:http://www.foxtable.com/webhelp/scr/2637.htm



 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/12/11 9:50:00 [只看该作者]

以下是引用lisheng1971在2018/12/10 18:54:00的发言:
谢谢版主!虽然对这段代码还是没有完全理解。现在这样2个表里到是都可以把照片随意导入,但图片控件(picturebox1,没绑定任何表,没没置图片存放目录)还是没有显示,其中1个表能看到导入了照片的文件名,但点开看不到照片,另一个表能看到,2个表的照片列都是备注型格式,这个为什么呢?

 

做个实例发上来测试吧。


 回到顶部