以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  打开文件  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=157670)

--  作者:实话实说
--  发布时间:2020/10/25 7:57:00
--  打开文件
根据文件名编码打开文件,如果存在,就打开,不存在就提示,以下代码错在哪?

Dim F1 As String = ProjectPath & "xp.txt"
F1 = FileSys.ReadAllText(F1,Encoding.Default)
Dim files() As String  = System.IO.Directory.GetFiles(F1 & "中兴规格书\\" ,  e.Row("物料代码") & "*.xls")
For Each file As String In files
    If FileSys.FileExists(file) Then 
        Dim Proc As New Process
        Proc.File = file
        Proc.Start()
    Else
        MessageBox.Show("文件不存在!","提示")
    \'e.Cancel = True
    End If
Next
[此贴子已经被作者于2020/10/25 10:10:15编辑过]

--  作者:实话实说
--  发布时间:2020/10/25 8:04:00
--  
如果文件存在就打开,不存在就提示
现在不存在的文件双击后没有反应
不好理解:Dim files() As String  = System.IO.Directory.GetFiles(F1 & "中兴规格书\\" , e.Row("物料代码") & "*.xls")
[此贴子已经被作者于2020/10/25 10:49:26编辑过]

--  作者:有点蓝
--  发布时间:2020/10/25 20:35:00
--  
Dim F1 As String = ProjectPath & "xp.txt"
F1 = FileSys.ReadAllText(F1,Encoding.Default)
Dim files() As String  = System.IO.Directory.GetFiles(F1 & "中兴规格书\\" ,  e.Row("物料代码") & "*.xls")
If files.length > 0 Then
    For Each file As String In files
        Dim Proc As New Process
        Proc.File = file
        Proc.Start()
    Next
Else
    MessageBox.Show("文件不存在!","提示")
    \'e.Cancel = True
End If

[此贴子已经被作者于2020/10/26 8:32:52编辑过]

--  作者:实话实说
--  发布时间:2020/10/26 6:34:00
--  
可以了,谢谢。
顺便问一下,这一句If files.length是什么意思?
再请教:物料代码列,对于不存在的文件全部用灰色标识,表数据颜色的代码如何写?
[此贴子已经被作者于2020/10/26 6:41:51编辑过]

--  作者:有点蓝
--  发布时间:2020/10/26 8:34:00
--  
应该是If files.length > 0 Then,写漏了


--  作者:实话实说
--  发布时间:2020/10/26 9:17:00
--  
3楼代码中物料代码列,对于有代码但文件不存在的行字颜色用灰色标识。不想用DrawCell,最好将代码写在项目事件或窗口是件中,帮我写下代码好吗?
[此贴子已经被作者于2020/10/26 9:17:17编辑过]

--  作者:有点蓝
--  发布时间:2020/10/26 9:37:00
--  
只能使用DrawCell