Private Sub Dirl Change( Filel.Path=Dir1.Path End Sub 2.如何在目录列表框表示当前选定的目录 在程序运行时双击目录列表框的某目录项,则将该目录项改变为当前目录,其Dirl.Path 的值做相应的改变。而当单击选定该目录项时,Dir1.Path的值并没有改变。为了对选定的 目录项进行有关操作,即与ListBox控件中某列表项的选定相对应,则表示如下: Dir1.List(Dir1.ListIndex) 3.当使用文件系统控件对文件进行打开操作时,显示“文件未找到”出错信息 例如,如下语句:Open Filel..Path+File1.FileName For Input As#l 当选定的目录是根目录,上述语句执行正确:而当选定的目录为子目录,上述语句执行 时显示“文件未找到”出错信息。 其中:Filel.Path表示当前选定的路径,Filel.FileName表示当前选定的文件,合起来表 示文件的标识符。 当选定的文件在根目录下(假定驱动器为C),Flel.Path的值为“C:1”,假定选定的文 件名为“tmp.txt”,则File1..Path+File1.FileName的值为“C:tmp.txt”,为合法的标识符。 当选定的文件在子目录下(假定驱动器为C,子目录为my),Filel.Path的值为“C:”, 假定选定的文件名为“tmp.txt”,则Filel.Path+Filel.FileName的值为“C:mytmp.txt”,子目 录与文件名之间少了一个“1”分隔符,所以为不合法的标识符。 为了保证程序的正常运行,应采用选择结构来处理这两种情况,故语句:Open Filel.Path +Filel.FileName For Input As#1应改为如下程序段: If Right(File1.Path,1)="\"Then Open Filel.Path Filel.FileName For Input As #1 Else Open File1.Path +"\"Filel.FileName For Input As #1 End If 4.Ope语句中欲打开的文件名是字符串常量也可以是字符串变量,但使用者概念不 清,导致出现“文件未找到”出错信息 例如,要从盘上读入文件名为“C:\my\tmp.txt”, 文件名是字符串常量时,对应程序段书写如下: Open "C:\my\tmp.txt"For Input As #1 但常见到错误的写法有: Open C:\my\tmp.txt For Input As #1 少写了作为字符串常量的文件名两端的引号“”: 文件名是字符串变量时,对应程序段书写如下: strFile="C:\my\tmp.txt" Open strFile For Input As #1 但常见到错误的写法有: strFile="C:\my\tmp.txt" Open "strFile"For Input As #1 多写了存储文件名的字符串变量的两端的引号“”。 5.文件没有关闭又被打开时,显示“文件己打开”的出错信息 例如,下列语句: )2 ? 89 <%)2 !"#$#%&'() ! G_`aTbc>§?X§PQj*+?g û?¡PQ ¯*c=DX§T? ûÏ@.PQ jAü=D §Ía.©?µ !>§=D¡ü?)nd$ 8 *% 9 &*+,-./012345%6789:;<=> mn?ndÆÇ$+! @ " *!2(/ *=DL?,BÆÇõaCq¯*=DjD?,BÆÇõa T()oèE7pE+FG g!$ )*+=D[\? " )*+=D?®H' )I0 *=DGd%JD j &? ûjoAp?JD=D ejo !p? @ " ûjoA !p?j®ÔI0 *=DGDd%JD j ?Dj 1&? ûjoAp? JD=Dejo !p? @ " ûjoA 1 !p?D µeÎôKAM oApx0?-6jþ®ÔI0 jALM_C`a?"=>½¾'«¬|NO?PÆÇ$+! @ " *!2(/ Pjnd_¢$ *4&8 :9BAB; +! @ " *!2(/ < +! @BAB@ " *!2(/ <%*4 ?@AB/0 CDEFGHIJKLDEFGMI4N*+O P4QR;S6789:;<=> mn?ß/,çejoA 1A !p? eL0T?ü_¢Qnd$ +! BA 1A !B *!2(/ RS7+,Ô.$ +! A 1A ! *!2(/ KAj0eITyop eL0QT?ü_¢Qnd$ BA 1A !B +! *!2(/ RS7+,Ô.$ BA 1A !B +! B B *!2(/ {Ae0QITyop TUVWX/0345%6Y/0: ;<=> mn?dÆÇ$