《vb编程技术》文件、驱动器和文件夹_第1页
《vb编程技术》文件、驱动器和文件夹_第2页
《vb编程技术》文件、驱动器和文件夹_第3页
《vb编程技术》文件、驱动器和文件夹_第4页
《vb编程技术》文件、驱动器和文件夹_第5页
已阅读5页,还剩115页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第11章文件、驱动器和文件夹11.1文件系统控件11.2文件系统对象11.3传统的文件I/O语句和函数习题十一11.1文件系统控件11.1.1驱动器列表框驱动器列表框DriveListBox是下拉式列表框,它与目录列表框、文件列表框一样,有许多标准属性,包括Enabled、Visible等。图11.1在运行期间的驱动器列表框11.1.2目录列表框目录列表框用来显示当前驱动器上的目录结构,刚建立时显示当前驱动器的顶层目录和当前目录。顶层目录用翻开的文件夹表示,当前目录用加阴影的文件夹表示,当前目录下的子目录用关闭的文件夹表示,如图11.2所示。图11.2在设计阶段的目录列表框11.1.3文件列表框用驱动器列表框和目录列表框可以指定当前驱动器和当前目录,而文件列表框可以用来显示当前目录下的文件(可以通过Path属性改变)。文件列表框的默认控件名是File1。与文件列表框有关的属性较多,其主要属性如表11-1所示。

表11-1文件列表框的常用属性【例11-1】在实际应用中,驱动器列表框、目录列表框和文件列表框往往需要同步操作,请编写程序使三者同步。可以通过改变Path属性来引发Change事件:PrivateSubDir1_Change()File1.Path=Dir1.PathEndSub该事件过程使窗体上的目录列表框Dir1与文件列表框File1产生同步。类似地,增加下面的事件过程,就可以使三者同步。PrivateSubDrive1_Change()Dir1.Path=Drive1.DriveEndSub同步操作情况如图11.3所示。图11.3使驱动器列表框、目录列表框、文件列表框三者同步11.2文件系统对象11.2.1文件系统对象的概念1.FileSystemObject模型VB6.0具有FSO模型功能,该模型提供了一个基于对象的工具来处理文件夹和文件。2.文件系统对象(FileSystemObject)FSO模型包括表11-2所示的对象。

表11-2FSO模型中的对象FSO模型包含在一个称为Scripting的类型库中,此类型库位于Scrrun.Dll文件中。如果还没有引用此文件,从“工程〞菜单的“引用〞对话框中选择“MicrosoftScriptingRuntime"项,如图11.4所示,然后就可以使用“对象浏览器〞来查看其对象、集合、属性、方法、事件以及常数。图11.4“引用〞对话框11.2.2使用文件系统对象编程1.创立FileSystemObject对象使用文件系统对象编程,首先必须创立一个FileSystemObject对象,然后才能使用其方法、属性来管理驱动器、文件夹和文件等对象。有两种方法可以创立一个FileSystemObject对象。(1)将一个变量声明为FileSystemObject对象类型,如下所示:Dim〈变量名〉AsNewFileSystemObject(2)使用CreateObject方法来创立一个FileSystemObject对象,如下所示:Set〈变量名〉=CreateObject("Scripting.FileSystemObject")2.使用适当的方法在FileSystemObject对象中,某些操作可以使用不同的方法,例如,想要创立一个新对象,既可以使用CreateFolder方法也可以使用CreateTextFile方法。(FSO对象模型不支持创立或删除驱动器。)3.访问已有的驱动器、文件和文件夹要访问一个已有的驱动器、文件或文件夹,可使用FileSystemObject对象中相应的“Get〞方法:GetDrive、GetFolder、GetFile。4.访问对象的属性一旦有了对象的句柄,就能够访问其属性。11.2.3管理驱动器1.获得驱动器的信息Drive对象允许获得一个系统的各个驱动器的信息,这些驱动器可以是物理的,也可以是位于网络上的。通过该对象的属性可以获得以下信息:(1)以字节表示的驱动器总空间(TotalSize属性)。(2)以字节表示的驱动器可用空间(AvailableSpace或FreeSpace属性)。(3)给驱动器指定的字母号(DriveLetter属性)。(4)驱动器类型,诸如软盘、硬盘、远程(网络)盘、光盘或者RAM盘(DriveType属性)。(5)驱动器序列号(SerialNumber属性)。(6)驱动器使用的文件系统类型,如FAT、FAT32、NTFS等(FileSystem属性)。(7)驱动器是否可用(IsReady属性)。(8)共享和/或卷标的名称(ShareName和VolumeName属性)。(9)驱动器的路径或根文件夹(Path和RootFolder属性)。其中,DriveType属性返回表11-3中所列的值。表11-3DriveType属性的返回值2.Drive对象用法例如下面举例说明如何使用Drive对象来收集有关驱动器的信息。【例11-2】查看驱动器信息。在Drive1中改变驱动器后,程序将弹出信息框,显示所选驱动器的有关信息。设计步骤如下:(1)建立应用程序用户界面并设置对象属性。(2)编写程序代码。Drive1的Change事件代码为PrivateSubDrive1_Change()DimfsoAsNewFileSystemObject,drvAsDrive,sAsStringmdrive=Drive1.DriveSetdrv=fso.GetDrive(fso.GetDriveName(mdrive))s="驱动器"&UCase(mdrive)&Chr(13)s=s&drv.VolumeName&vbCrLf&Chr(13)s=s&"最大空间:"&FormatNumber(drv.TotalSize/1024,0)s=s&"Kb"&vbCrLf&Chr(13)&Chr(13)s=s&"剩余空间:"&FormatNumber(drv.FreeSpace/1024,0)s=s&"Kb"&vbCrLfMsgBoxs,0,"查看驱动器信息"EndSub程序运行结果如图11.5所示。图11.5查看驱动器信息11.2.4管理文件夹1.文件夹对象Folder的方法与属性表11-4列出了创立、删除、移动和复制文件夹所使用的方法。表11-4创立、删除、移动和复制文件夹的方法表11-5文件夹定位的方法表11-6Folder对象的属性2.文件夹对象Folder的使用【例11-3】编写程序进行文件夹管理,要求该程序可以对文件夹进行创立、复制、移动、删除更名操作,如图11.6所示。图11.6文件夹管理器设计步骤如下:(1)建立应用程序用户界面并设置对象属性。(2)编写程序代码。首先在通用过程中声明对象变量:DimfsoAsNewFileSystemObject,drvAsDrive,fldrAsFolder,sAsStringDrive1的Change事件代码为PrivateSubDrive1_Change()图11.7设计用户界面Dir1.Path=Drive1.DriveChDriveDrive1.Drive:ChDirDir1.PathEndSubDrive2的Change事件代码为PrivateSubDrive2_Change()Dir2.Path=Drive2.DriveEndSubDir1的Change事件代码为PrivateSubDir1_Change()ChDirDir1.PathEndSub命令按钮数组Command1的Click事件代码为PrivateSubCommand1_Click(IndexAsInteger)Setdrv=fso.GetDrive(Drive1.Drive)SelectCaseIndexCase0 '新建Setfldr=fso.GetFolder(Dir1.Path)msg="请输入新创立的文件夹名:"msg=msg&Chr(13)&Chr(13)&"当前的文件夹名为:"a=InputBox(msg&fldr.Path,"创立新文件夹","新文件夹")IfLen(Trim(a))<>0ThenSetfldr=fso.CreateFolder(a)Case1 '复制Setfldr=fso.GetFolder(Dir1.List(Dir1.ListIndex))fldr.CopyIIf(Right(Dir2.Path,1)="\",Dir2.Path,Dir2.Path&"\")Case2 '移动Setfldr=fso.GetFolder(Dir1.List(Dir1.ListIndex))IfDrive1.Drive<>Drive2.DriveThenMsgBox"不能在不同的驱动器间移动!",48,"移动"Elsefldr.MoveIIf(Right(Dir2.Path,1)="\",Dir2.Path,Dir2.Path&"\")EndIfCase3 '删除Setfldr=fso.GetFolder(Dir1.List(Dir1.ListIndex))IfDir1.ListIndex=-1ThenMsgBox"不能删除正翻开的文件夹!",48,"删除"Elsemsg="真要删除以下文件夹吗?"&Chr(13)&Chr(13)a=MsgBox(msg&fldr.Path,1+32+256,"删除文件夹")Ifa=1Thenfldr.DeleteEndIfCase4 '更名Setfldr=fso.GetFolder(Dir1.List(Dir1.ListIndex))msg="请输入新的文件夹名:"msg=msg&Chr(13)&Chr(13)&"文件夹原名为:"a=InputBox(msg&fldr.Path,"文件夹更名",fldr.Path)IfLen(Trim(a))<>0Thenfldr.Name=aEndSelectDir2.RefreshDir1.RefreshEndSub程序运行结果如图11.6所示。11.2.5管理文件文件管理主要有两类:(1)移动、复制、和删除文件。(2)创立、添加、删除数据以及阅读文件。

1.文件对象File的属性文件对象File的属性与文件夹对象的属性相似,参见表11-6所示。2.移动、复制和删除文件对文件的移动、复制和删除,FSO模型都提供了两种方法,见表11-7。表11-7移动、复制和删除文件的方法【例11-4】编制文件管理器程序。可以复制、移动、删除文件,还可以查看文件的属性和对文件进行更名的操作,如图11.8所示。图11.8文件管理器设计步骤如下:(1)建立应用程序用户界面并设置对象属性。与例11-3相仿,只是在两个框架中各多了一个文件列表框File1(File2)。(2)编写程序代码。首先在通用过程中声明对象变量:DimfsoAsNewFileSystemObject,drvAsDriveDimfldrAsFolder,filAsFile,sAsStringDrive1的Change事件代码为PrivateSubDrive1_Change()Dir1.Path=Drive1.DriveChDriveDrive1.Drive:ChDirDir1.PathEndSubDrive2的Change事件代码为PrivateSubDrive2_Change()Dir2.Path=Drive2.DriveEndSubDir1的Change事件代码为PrivateSubDir1_Change()File1.Path=Dir1.PathChDirDir1.PathEndSubDir2的Change事件代码为PrivateSubDir2_Change()File2.Path=Dir2.PathEndSub命令按钮数组Command1的Click事件代码为PrivateSubCommand1_Click(IndexAsInteger)OnErrorGoToErrorHandler '翻开错误处理程序Setdrv=fso.GetDrive(Drive1.Drive)SelectCaseIndexCase0 '属性Setfil=fso.GetFile(File1.FileName)msg="最后修改日期:"&fil.DateLastModified&Chr(13)msg=msg&"文件名:"&fil.Name&Chr(13)msg=msg&"文件长度:"&fil.Size&Chr(13)msg=msg&"文件类型:"&fil.Type&Chr(13)MsgBoxmsg,,"文件管理器"Case1 '复制Setfil=fso.GetFile(File1.FileName)fil.CopyIIf(Right(Dir2.Path,1)="\",Dir2.Path,Dir2.Path&"\")Case2 '移动Setfil=fso.GetFile(File1.FileName)IfDrive1.Drive<>Drive2.DriveThenMsgBox"不能在不同的驱动器间移动!",48,"移动"Elsefil.MoveIIf(Right(Dir2.Path,1)="\",Dir2.Path,Dir2.Path&"\")EndIfCase3 '删除Setfil=fso.GetFile(File1.FileName)msg="真要删除以下文件吗?"&Chr(13)&Chr(13)a=MsgBox(msg&fil,1+32+256,"删除文件")Ifa=1Thenfil.DeleteCase4 '更名Setfil=fso.GetFile(File1.FileName)msg="请输入新的文件名:"&Chr(13)&Chr(13)&"文件原名为:"a=InputBox(msg&fil,"文件更名",fil.Name)IfLen(Trim(a))<>0Thenfil.Name=aEndSelectFile1.RefreshFile2.RefreshExitSub '退出程序,以免进入错误处理程序ErrorHandler: '错误处理程序MsgBox"应该选择一个文件",,"文件管理器"EndSub程序运行结果如图11.8所示。3.数据文件的创立有3种方法可以创立顺序型的空文本文件c:\testfile.txt。(1)使用CreateTextFile方法:DimfsoAsNewFileSystemObject,filAsFileSetfil=fso.CreateTextFile("c:\testfile.txt",True)(2)使用FileSystemObject对象的OpenTextFile方法,该对象的ForWriting标志设置为DimfsoAsNewFileSystemObject,tsAsNewTextStreamSetts=fso.OpenTextFile("c:\testfile.txt",ForWriting)(3)使用带ForWriting标志设置的OpenAsTextStream方法:DimfsoAsNewFileSystemObject,filAsFile,tsAsTextStreamSetfso=CreateObject("Scripting.FileSystemObject")fso.CreateTextFile("testfile.txt")Setfil=fso.GetFile("testfile.txt")Setts=fil.OpenAsTextStream(ForWriting)4.数据文件的写入文本文件一经创立,就可以分3步向其中参加数据:(1)翻开文本文件以备写入数据。(2)写入数据。(3)关闭文件。添加数据所使用的方法如表11-8所示。5.从文件中读取数据读取数据所使用的方法如表11-9所示。表11-8添加数据所使用的方法表11-9读取数据所使用的方法【例11-5】使用FSO模型。利用TextStream对象的属性和方法进行文本文件的各种操作,如图11.9所示。图11.9文本编辑器图11.10用户界面的设计设计步骤如下:(1)建立应用程序用户界面与设置对象属性,如图11.10所示。(2)编写程序代码。首先在通用过程中声明对象变量:DimfsoAsNewFileSystemObject,filAsTextStream窗体的Resize事件代码为PrivateSubForm_Resize()WithText1.Height=Form1.ScaleHeight.Width=Form1.ScaleWidth-Picture1.WidthEndWithCommand1(4).Top=Form1.ScaleHeight-Command1(4).Height-50EndSub命令按钮数组Command1的Click事件代码为PrivateSubCommand1_Click(IndexAsInteger)CommonDialog1.Flags=0SelectCaseIndexCase0 '新建Text1.Text=""Form1.Caption="未命名"Case1CommonDialog1.ShowOpen'显示“翻开〞公共对话框fname=CommonDialog1.FileNameIffname<>""ThenText1.Text=""Setfil=fso.OpenTextFile(fname)b=""b=fil.ReadAllText1.Text=Left(b,20000)EndIfForm1.Caption=fnameCase2IfForm1.Caption="未命名"OrForm1.Caption=""ThenCommonDialog1.ShowSave '显示“另存为〞公共对话框fname=CommonDialog1.FileNameElsefname=Form1.CaptionEndIfIfForm1.Caption<>"未命名"AndForm1.Caption<>""ThenSetfil=fso.CreateTextFile(fname,True)fil.WriteText1.TextForm1.Caption=fnameEndIfCase3CommonDialog1.ShowSave'显示“另存为〞公共对话框fname=CommonDialog1.FileNameIffname<>""ThenSetfil=fso.CreateTextFile(fname,True)fil.WriteText1.TextForm1.Caption=fnameEndIfCase4UnloadMe '关闭EndSelectText1.SetFocusEndSub程序运行结果如图11.9所示。11.3传统的文件I/O语句和函数11.3.1数据文件的类型计算机的数据文件按数据的存放方式,分为以下3种类型:(1)顺序型:用于连续存放的文本数据。(2)随机型:用于有固定长度记录结构的文本数据或者二进制数据。(3)二进制型:以二进制格式保存,能用来存储任何所希望的数据。在VB中,数据文件的处理操作一般按下面3步进行:(1)翻开(或建立)文件。(2)进行读、写操作。(3)关闭文件。11.3.2访问顺序文件1.顺序文件的翻开在对文件进行操作之前,首先要翻开文件。当按顺序型访问翻开一个文件时,需要使用Open语句,其语法为Open〈文件名〉For{Input|Output|Append}As〈文件号〉[Len=buffersize]2.顺序文件的读取操作要读取文本文件的内容,应以Input方式翻开该文件。然后使用LineInput#、Input(),或者Input#语句将文件复制到内存变量中:LineInput#〈文件号〉,〈变量名〉Input(Length,〈文件号〉)Input#〈文件号〉,〈变量名1〉[,〈变量名2〉,...]3.顺序文件的写入操作要将数据写入文本文件,应以Output或Append方式翻开该文件。然后使用Print#或者Write#语句将数据写入文件中:Print#〈文件号〉,〈数据〉[{,|;}]Write#〈文件号〉,〈数据〉4.顺序文件的关闭翻开一个文件后,在进行其他相关类型的操作前,必须先使用Close语句关闭它。其语法为Close〈文件号1〉[,〈文件号2〉,...]【例11-6】设计一个简易的文本编辑器,使其具有创立、编辑、保存普通文本文件的功能,如图11.11所示。图11.11简易文本编辑器设计步骤如下:(1)建立应用程序用户界面并设置对象属性。选择“新建〞工程,进入窗体设计器,在窗体上增加一个文本框Text1,一个公共对话框CommonDialog1和5个命令按钮Command1~Command5,如图11.12所示。设置窗体、文本框、公共对话框的属性如下表所示,命令按钮及其他的属性设置参见图11.12。对象属性如表11-10所示。图11.12建立用户界面及设置对象属性表11-10属性设置(2)编写代码。“新建〞命令按钮Command1的Click事件代码为PrivateSubCommand1_Click()Text1.Text=""Form1.Caption="未命名"Text1.SetFocusEndSub“翻开〞命令按钮Command2的Click事件代码为PrivateSubCommand2_Click()CommonDialog1.ShowOpen'显示“翻开〞公共对话框fname=CommonDialog1.FileNameIffname<>""ThenText1.Text=""OpenfnameForInputAs#1 '翻开文件b=""DoUntilEOF(1) '没有到文件尾LineInput#1,nextline '读数据b=b&nextline&Chr(13)&Chr(10)LoopClose#1 '关闭文件Text1.Text=bEndIfForm1.Caption=fnameEndSub“保存〞命令按钮Command3的Click事件代码为PrivateSubCommand3_Click()IfForm1.Caption="未命名"OrForm1.Caption=""ThenCommonDialog1.ShowSave '显示“另存为〞公共对话框fname=CommonDialog1.FileNameElsefname=Form1.CaptionEndIfIffname<>""ThenOpenfnameForOutputAs#1'以Output方式翻开文件Print#1,Text1.Text '写入数据Close#1 '关闭文件EndIfEndSub“另存〞命令按钮Command4的Click事件代码为PrivateSubCommand4_Click()CommonDialog1.ShowSave'显示“另存为〞公共对话框fname=CommonDialog1.FileNameIffname<>""ThenOpenfnameForOutputAs#1'以Output方式翻开文件Print#1,Text1.Text '写入数据Close#1 '关闭文件EndIfEndSub“关闭〞命令按钮Command5的Click事件代码为PrivateSubCommand5_Click()Text1.Text=""UnloadMeEndSub运行程序,单击不同的命名按钮,可以进行不同的文本编辑操作。如图11.13所示,单击“翻开〞按钮时,将弹出“翻开〞对话框,从中选择需要翻开的文件,将内容读入文本框中。单击“保存〞按钮时,将翻开“保存〞对话框,可以对文本内容进行保存,如图11.14所示。图11.13在文本编辑器中单击“翻开〞按钮图11.14在文本编辑器中单击“保存〞按钮11.3.3访问随机文件1.随机文件的翻开与关闭与顺序文件不同,翻开一个随机文件后,既可以用于写操作,也可以用于读操作。随机文件的翻开仍用Open语句,但其语法不同:Open〈文件名〉[ForRandom]As〈文件号〉Len=〈记录长度〉2.随机文件的读写操作随机文件与顺序文件的读写操作类似,但通常把需要读写的记录中的各字段放在一个记录类型中,同时应指定每个记录的长度。其他操作。(1)把记录读入变量,使用Get#语句:Get#〈文件号〉,〈记录号〉,〈变量名〉(2)使用Put#语句可以把数据写入或替换随机文件中的记录:Put#〈文件号〉,〈记录号〉,〈变量名〉(3)添加记录,应使用前述代码段中所示的Put语句。把〈记录号〉的值设置为比文件中的记录数多1。(4)删除记录。通过去除其字段可以删除一个记录,但是该记录仍在文件中存在。要去除随机访问文件中删除的记录,请按照以下步骤执行:(1)创立一个新文件。(2)把有用的所有记录从原文件复制到新文件。(3)关闭原文件并用Kill语句删除它。(4)使用Name语句把新文件以原文件的名字重新命名。随机文件对于存储结构一定的数据比较方便。【例11-7】利用随机文件保存学生的成绩,可以输入学生的学号、姓名以及3门功课的成绩,也可浏览或删除数据。设计步骤如下:(1)建立应用程序用户界面并设置对象属性。设置框架、文本框、标签、列表框和命令按钮的属性如图11.15所示。(2)编写事件代码。

图11.15建立用户界面及设置对象属性首先在窗体的通用过程段创立用户定义类型并声明变量:PrivateTypecjxmAsString*6xhAsString*6xbAsString*2sxAsIntegerywAsIntegerwyAsIntegerEndTypePrivatedaAscj编写窗体的Load事件代码,使之具有显示数据的功能:PrivateSubForm_Load()DimlastrecAsInteger,sxAsSingleDimywAsSingleOpen"xsda2.dat"ForRandomAs#1Len=Len(da) '翻开随机文件lastrec=LOF(1)/Len(da)List1.ClearForn=1TolastrecGet#1,n,daWithdaxh=Format(.xh,"@@@@")xm=Format(RTrim(.xm),"@@@@")xb=Format(RTrim(.xb),"@@")sx=Format(.sx,"##")yw=Format(.yw,"##")wy=Format(.wy,"##")msg=xh&xm&xb&""&Str(yw)&""&Str(wy)&""&Str(sx)EndWithList1.AddItemmsgNextClose#1 '关闭随机文件EndSub编写“输入〞命令按钮Command1的Click事件代码:PrivateSubCommand1_Click()Fori=0To5Text1(i).Text=""NextText1(0).SetFocusEndSub编写“添加〞命令按钮Command2的Click事件代码:PrivateSubCommand2_Click()DimlastrecAsIntegerWithda.xh=Text1(0).Text.xm=Text1(1).Text.xb=Text1(2).Text.sx=Val(Text1(3).Text).yw=Val(Text1(4).Text).wy=Val(Text1(5).Text)EndWithOpen"xsda2.dat"ForRandomAs#1Len=Len(da) '翻开随机数据文件lastrec=LOF(1)/Len(da)Put#1,lastrec+1,daClose#1CallForm_LoadText1(0).SetFocusEndSub编写“删除〞命令按钮Command3的Click事件代码:PrivateSubCommand3_Click()DimlastrecAsIntegerrecnum=List1.ListIndex+1Open"rec.tem"ForRandomAs#1Len=Len(da) '翻开临时随机文件Open"xsda2.dat"ForRandomAs#2Len=Len(da) '翻开随机数据文件lastrec=LOF(2)/Len(da)Forn=1TolastrecIfn<>recnumThenGet#2,n,daPut#1,,daElseGet#2,n,daWithdaText1(0).Text=.xhText1(1).Text=.xmText1(2).Text=.xbText1(3).Text=.sxText1(4).Text=.ywText1(5).Text=.wyEndWithEndIfNextClose#1Close#2Kill"xsda2.dat"Name"rec.tem"As"xsda2.dat"CallForm_LoadText1(0).SetFocusEndSub编写“结束〞命令按钮Command4的Click事件代码:PrivateSubCommand4_Click()UnloadMeEndSub编写列表框List1的Click事件代码:PrivateSubList1_Click()IfList1.ListIndex>-1ThenCommand3.Enabled=TrueElseCommand3.Enabled=FalseEndIfEndSub程序运行结果如图11.16所示。图11.16学生成绩管理运行结果11.3.4访问二进制文件1.创立和翻开二进制文件翻开和创立一个二进制文件都是用同一个Open语句来实现的,其格式如下:Open〈文件名〉ForBinaryAs〈文件号〉2.读写二进制文件读文件操作是从已翻开的文件的某个位置开始,读取一定长度的数据。写文件操作是在已翻开的二进制文件的指定位置写入字节。一个二进制文件被翻开后,可以用Get语句来读取数据,用Put#语句在任何位置写入字节。其格式为Get#〈文件号〉,〈字节数〉,〈变量名〉Put#〈文件号〉,〈字节数〉,〈变量名〉3.关闭二进制文件为防止数据信息丧失,在使用完二进制文件后要立刻关闭它们。关闭二进制文件用Close语句,格式如下:Close#〈文件号〉〈文件号〉是要关闭文件的文件号,如果省略它,那么所有已翻开的文件都将被关闭。【例11-8】编写程序,建立一个二进制文件,然后用Seek函数返回各项数据的位置。设计步骤如下:(1)在窗体上建立3个命令按钮,其标题Caption属性分别为“建立文件〞、“返回位置〞和“退出〞。(2)编写事件代码。“建立文件〞命令按钮Command1的Click事件代码为PrivateSubCommand1_Click(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论