请教一个文件路径的问题

时间:2022-06-22 00:31:44
Public Sub Fill_Listview1()                   '填充模块设备列表(listview1)
'添加 ColumnHeaders。列宽度等于控件宽度
   '除以 ColumnHeader 对象的数目。
   ListView1.ListItems.Clear
   ListView1.ColumnHeaders.Clear
   ListView1.ColumnHeaders.Add , , "设备名称", ListView1.Width * 2 / 4
   ListView1.ColumnHeaders.Add , , "设备参数文档路径", ListView1.Width / 4
   ListView1.ColumnHeaders.Add , , "设备演示文档路径", ListView1.Width / 4
   ListView1.GridLines = True
   ' Set View property to Report.
   ListView1.View = lvwReport
   Dim itemX, itemX1 As ListItem
   Set itemX = ListView1.ListItems.Add(, "m1", "第一项第一列")
   itemX.SubItems(1) = "设备EXCLE文档路径"
   itemX.SubItems(2) = ""
   itemX.ToolTipText = "设备文档路径"
   Set itemX1 = ListView1.ListItems.Add(, "m2", "第二项第一列")
    itemX1.SubItems(1) = "设备EXCLE文档路径"
    itemX1.SubItems(2) = ""
    itemX1.ToolTipText = "设备文档路径"
   Set itemX1 = ListView1.ListItems.Add(, "m3", "第三项第一列")
    itemX1.SubItems(1) = "设备EXCLE文档路径"
    itemX1.SubItems(2) = ""
    itemX1.ToolTipText = "设备文档路径"
    
End Sub

Public Sub fill_First_Left_Listview1()            '填充第一模块左舷设备列表
   ListView1.ListItems.Clear
   ListView1.ColumnHeaders.Clear
   ListView1.ColumnHeaders.Add , , "设备名称", ListView1.Width * 2 / 4
   ListView1.ColumnHeaders.Add , , "设备参数文档路径", ListView1.Width / 4
   ListView1.ColumnHeaders.Add , , "设备演示文档路径", ListView1.Width / 4
   ListView1.GridLines = True
   ' Set View property to Report.
   ListView1.View = lvwReport
   Dim itemX, itemX1 As ListItem
     Set itemX = ListView1.ListItems.Add(, "m1", "脱水器")
   itemX.SubItems(1) = "D:\FPSO-PDM\FPSO_Information\Equipment_Management\TopModule\M1\Left\V2190\V-2190.xml"
   itemX.SubItems(2) = "D:\FPSO-PDM\FPSO_Information\Equipment_Management\TopModule\M1\Left\V2190\V-2190.swf"
   itemX.ToolTipText = "D:\FPSO-PDM\FPSO_Information\Equipment_Management\TopModule\M1\Left\V2190"
   Set itemX1 = ListView1.ListItems.Add(, "m2", "进口加热器")
    itemX1.SubItems(1) = "D:\FPSO-PDM\FPSO_Information\Equipment_Management\TopModule\M1\Left\E2180\E-2180  .xml"
    itemX1.SubItems(2) = "D:\FPSO-PDM\FPSO_Information\Equipment_Management\TopModule\M1\Left\E2180\E-2180.swf"
    itemX1.ToolTipText = "D:\FPSO-PDM\FPSO_Information\Equipment_Management\TopModule\M1\Left\E2180"

以这段程序为例,所调出文件的路径都是指定在d盘下的,怎么做可以使路径变成变量,可以在打包之后安装的时候指定安装的路径同时指定所调出文件的路径

6 个解决方案

#1


用 curdir() 和 app.path 可以得知当前路径和 exe 文件的路径。

#2


app.path & "\Name.Exe"

#3


使用 App.Path 吧。。。

参看MSDN描述:
———————————————————————————————
 
Path 属性
      

返回或设置当前路径。在设计时是不可用的。对于 App 对象,在运行时是只读的。

语法

object.Path [= pathname]

Path 属性的语法包含下面部分:

部分 描述 
object 对象表达式,其值是“应用于”列表中的一个对象。 
pathname 一个用来计算路径名的字符串表达式。 


说明

Path 属性的值是一个指示路径的字符串,例如 C:\Ob 或 C:\Windows\System。对于 DirListBox 或 FileListBox 控件,在运行时当控件被创建时,其缺省值是当前路径。对于 App 对象,当从开发环境运行该应用程序时 Path 指定 .VBP 工程文件的路径,或者当把应用程序当作一个可执行文件运行时 Path 指定 .exe 文件。

当建立一个应用程序的文件浏览器和操作能力时使用这个属性。设置 Path 属性对控件产生的影响与 MS-DOS 的 chdir 命令相似-相关的路径可以带有或不带有驱动器的描述。只有指定带冒号 (:) 的驱动器才能在那个驱动器上选择当前目录。

使用下面的语法,Path 属性也可以设置限定的网络路径而不需要驱动器连接:

\\servername\sharename\path

前面的语法将 Drive 属性改变成了 0 长度的字符串 ("")。

Path 值的改变将产生以下影响: 

对于一个 DirListBox 控件,将产生一个 Change 事件。


对于一个 FileListBox 控件,将产生一个 PathChange 事件. 
注意 对于 DirListBox,Path 的返回值与只返回选定内容的 List(ListIndex) 是不同的。

#4


app.path取得当前的路径。

#5


用App.Path

#6


我都把程序常用到的文件作为随行文件,放在程序同目录下,也可专门建个子目录放。
然后程序中用 app.path & "\" & 文件名 来作为文件路径。

在程序打包的时候,需要选择这些文件作为打入包的文件,这样他们就能跟随安装程序走了。不用单独拷贝

#1


用 curdir() 和 app.path 可以得知当前路径和 exe 文件的路径。

#2


app.path & "\Name.Exe"

#3


使用 App.Path 吧。。。

参看MSDN描述:
———————————————————————————————
 
Path 属性
      

返回或设置当前路径。在设计时是不可用的。对于 App 对象,在运行时是只读的。

语法

object.Path [= pathname]

Path 属性的语法包含下面部分:

部分 描述 
object 对象表达式,其值是“应用于”列表中的一个对象。 
pathname 一个用来计算路径名的字符串表达式。 


说明

Path 属性的值是一个指示路径的字符串,例如 C:\Ob 或 C:\Windows\System。对于 DirListBox 或 FileListBox 控件,在运行时当控件被创建时,其缺省值是当前路径。对于 App 对象,当从开发环境运行该应用程序时 Path 指定 .VBP 工程文件的路径,或者当把应用程序当作一个可执行文件运行时 Path 指定 .exe 文件。

当建立一个应用程序的文件浏览器和操作能力时使用这个属性。设置 Path 属性对控件产生的影响与 MS-DOS 的 chdir 命令相似-相关的路径可以带有或不带有驱动器的描述。只有指定带冒号 (:) 的驱动器才能在那个驱动器上选择当前目录。

使用下面的语法,Path 属性也可以设置限定的网络路径而不需要驱动器连接:

\\servername\sharename\path

前面的语法将 Drive 属性改变成了 0 长度的字符串 ("")。

Path 值的改变将产生以下影响: 

对于一个 DirListBox 控件,将产生一个 Change 事件。


对于一个 FileListBox 控件,将产生一个 PathChange 事件. 
注意 对于 DirListBox,Path 的返回值与只返回选定内容的 List(ListIndex) 是不同的。

#4


app.path取得当前的路径。

#5


用App.Path

#6


我都把程序常用到的文件作为随行文件,放在程序同目录下,也可专门建个子目录放。
然后程序中用 app.path & "\" & 文件名 来作为文件路径。

在程序打包的时候,需要选择这些文件作为打入包的文件,这样他们就能跟随安装程序走了。不用单独拷贝