点击或拖拽改变大小

StandardFileDialog.FileName 属性

X#
一个字符串,表示用户选择的文件的名称。如果用户取消,文件名为 NULL_STRING。

命名空间:  VO
程序集:  VOGUIClasses (在 VOGUIClasses.dll 中) 版本:2.22 GA
语法
 VIRTUAL PROPERTY FileName AS USUAL GET 
查看代码

属性值

类型:__Usual
一个字符串,表示用户选择的文件的名称。如果用户取消,文件名为 NULL_STRING。
示例
这个例子显示一个 OpenFile 对话框,其中的过滤器设置为只显示 DBF 和索引文件。多文件选择使用户可以选择一个 DBF 和一个索引。 创建一个选定文件的 DBServer 对象,并返回给调用者。
X#
 1METHOD OpenDB() CLASS StandardShellWindow
 2    LOCAL oOpenDialog AS OpenDialog
 3    LOCAL uFileName AS USUAL
 4    LOCAL aoFileSpecs := {} AS ARRAY
 5    LOCAL lDone := .F. AS LOGIC
 6    LOCAL oDB AS Dbserver
 7
 8    DO WHILE !lDone
 9        oOpenDialog:=OpenDialog{SELF}
10        oOpenDialog:Caption:="Open DBF and Index"
11        oOpenDialog:SetFilter ({"CUST*.*","ORD*.*","DET*.*"}, {"Customers", "Orders", "Details"})
12        oOpenDialog:SetStyle(OFN_ALLOWMULTISELECT + OFN_HIDEREADONLY)
13        oOpenDialog:InitialDirectory := "C:\CAVO2x\SAMPLES\GSTUTOR"
14        oOpenDialog:Show()
15
16        uFileName := oOpenDialog:FileName
17
18        IF IsArray(uFileName) .AND. ALen(uFileName) > 2
19            (TextBox{SELF,"File Selection Error",;
20            "Too many files selected"+CRLF+;
21            "Please select one DBF and one index"}):Show()
22        ELSE
23            lDone := .T.
24        ENDIF
25    ENDDO
26
27    // Open the selected DBF and index file
28    uFileName := oOpenDialog:FileName
29
30    IF IsArray(uFileName) // DBF and Index selected ?
31        AEval(uFileName,{ | cFileName | AADD( ;
32                                              aoFileSpecs, FileSpec{cFileName} ) } )
33
34        IF aoFileSpecs[1]:Extension != ".DBF"
35            aoFileSpecs[1]:= ArraySwap(aoFileSpecs, 2, aoFileSpecs[1])
36        ENDIF
37
38        RDDSetDefault("DBF"+SUBSTR(aoFileSpecs[2]:Extension, 2, 3) )
39        oDB := DBServer{aoFileSpecs[1]}
40        oDB:SetIndex(aoFileSpecs[2])
41
42        ELSEIF LOGIC(_CAST, uFileName) // Anything selected at all?
43
44        AADD(aoFileSpecs,FileSpec{uFileName})
45        oDB := DBServer{aoFileSpecs[1]}
46    ENDIF
47    RETURN oDB
参见