以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 为什么我代码如下后,需要点两次运行 才能显示图片呢 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=149613) |
-- 作者:李孝春 -- 发布时间:2020/5/7 16:00:00 -- 为什么我代码如下后,需要点两次运行 才能显示图片呢 Dim pc2 As WinForm.PictureBox = e.Form.Controls("PictureBox1") Dim kp As WinForm.TabControl = e.Form.Controls("TabControl1") Dim web1 As WinForm.WebBrowser = e.Form.Controls("WebBrowser1") web1.Address = Nothing If FileSys.DirectoryExists(ProjectPath & "预览文件") Then \'如果目录存在 If Tables("收文列表.文件附件").Current Is Nothing Then Return End If Dim dr As DataRow = Tables("收文列表.文件附件").Current.DataRow Dim fl As String = ProjectPath & "预览文件\\" & dr("文件名") If FileSys.FileExists(fl) AndAlso CRCCheckFile(fl) = dr.SQLGetValue("CRC值") Then \'如果本地存在同名文件且CRC校验值相同 \'则直接使用本地文件 If fl.EndsWith(".jpg") OrElse fl.EndsWith(".png") OrElse fl.EndsWith(".bmp") OrElse fl.EndsWith(".gif") Then pc2.Image= GetImage(fl) kp.SelectedIndex=0 Else If fl.EndsWith(".txt") OrElse fl.EndsWith(".zip") OrElse fl.EndsWith(".rar") OrElse fl.EndsWith(".pdf") OrElse fl.EndsWith(".exe") Then Dim Proc As New Process \'打开文件 Proc.File = fl Proc.Start() Else web1.Address = fl kp.SelectedIndex=1 End If Else \'否则从数据库提取文件 If dr.SQLLoadFile("附件",fl) = False Then \'如果提取文件失败 Messagebox.Show("附件提取失败,可能并不存在附件!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information) Return End If End If End If
|
-- 作者:有点蓝 -- 发布时间:2020/5/7 16:14:00 -- 看不出什么问题。图片框是不是绑定了列?去掉绑定 |
-- 作者:李孝春 -- 发布时间:2020/5/7 16:30:00 -- 回复:(有点蓝)看不出什么问题。图片框是不是绑定了... 有点蓝老师 图片框和网页组件都没有绑定列哦 |
-- 作者:有点蓝 -- 发布时间:2020/5/7 16:31:00 -- 做个例子发上来测试一下 |
-- 作者:李孝春 -- 发布时间:2020/5/7 17:09:00 -- 回复:(有点蓝)做个例子发上来测试一下 有点蓝 老师 好的 稍后我回电脑旁边了传过来 [此贴子已经被作者于2020/5/7 17:41:06编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/5/7 17:58:00 -- 以下内容是专门发给李孝春浏览 |
-- 作者:李孝春 -- 发布时间:2020/5/8 9:19:00 -- 回复:(有点蓝)[UserName=李孝春][upload=zip,收文助... 有点蓝老师 请教一下 为什么加上红色部分后就没有点击两次的情况了呢! If Tables("收文列表.文件附件").Current Is Nothing Then Return End If Dim dr As DataRow = Tables("收文列表.文件附件").Current.DataRow Dim fl As String = ProjectPath & "预览文件\\" & dr("文件名") \'If FileSys.FileExists(fl) AndAlso CRCCheckFile(fl) = dr.SQLGetValue("CRC值") Then \'如果本地存在同名文件且CRC校验值相同 \'则直接使用本地文件 If fl.EndsWith(".jpg") OrElse fl.EndsWith(".png") OrElse fl.EndsWith(".bmp") OrElse fl.EndsWith(".gif") Then pc2.Image= GetImage(fl) kp.SelectedIndex=0 Else If fl.EndsWith(".zip") OrElse fl.EndsWith(".rar") OrElse fl.EndsWith(".exe") Then \'fl.EndsWith(".txt") OrElse fl.EndsWith(".pdf") OrElse Dim Proc As New Process \'打开文件 Proc.File = fl Proc.Start() Else web1.OfficeToolBar = False web1.Address = fl kp.SelectedIndex=1 End If \'Else \'否则从数据库提取文件 If dr.SQLLoadFile("附件",fl) = False Then \'如果提取文件失败 Messagebox.Show("附件提取失败,可能并不存在附件!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information) Return Else pc2.Image= GetImage(fl) End If \'End If 另外在请教一下 web浏览器一般都可以选择编码 狐表中WebBrowser怎么定义编码为utf-8呢? |
-- 作者:有点蓝 -- 发布时间:2020/5/8 9:21:00 -- 第一次没有文件的时候,dr.SQLLoadFile("附件",fl)只是保存图片文件,并没有赋值给图片控件。 |