基于VB的桌面系统开发方案T_第1页
基于VB的桌面系统开发方案T_第2页
基于VB的桌面系统开发方案T_第3页
基于VB的桌面系统开发方案T_第4页
基于VB的桌面系统开发方案T_第5页
已阅读5页,还剩95页未读 继续免费阅读

下载本文档

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

文档简介

1、1基于基于VB的桌面系统开发方案的桌面系统开发方案程序的打包和展开2课题目标课题目标i学会如何为应用程序创建帮助文件i了解Whats This Help和ToolTipText 属性的使用i区分P-code(伪代码) 和Native code(本机代码) 两个编译选项的不同i了解使用打包和开发向导进行程序打包和开发的步骤i了解TreeView 控件的使用3回顾回顾i介绍进程和线程的概念i两种部件进程内部件(.dll)和进程外部件(.exe)。i在Visual Basic中创建一个ActiveX DLLi简要说明了对象浏览器在工程中的作用i类型库和对象的概念i介绍了ActiveX文档i使用DHT

2、ML应用程序创建Internet 上的文档4如何创建帮助如何创建帮助i按下F1就可以调出相关主题的帮助文件i一个典型的帮助窗口包括三个部分: 目录i显示所有帮助文件的结构信息i只用鼠标就可以跳到相应主题 索引 i和一本书的索引类似i按照字母顺序列出帮助文件中创建的所有主题的一个列表。i主题是我们在帮助文件中生成的主题的名称5如何创建帮助(续)如何创建帮助(续) 查找i通过创建一个帮助文件信息的数据库来实现的跳跃式的查询i数据库中包括了所有帮助文件中的单词i用户在不知道主题的情况下可以通过指定一个单词进行查找6MS Word的帮助对话框的帮助对话框7Visual Basic的帮助的帮助iVisu

3、al Basic 6.0提供详细的帮助系统i它有功能强大的帮助系统,称为Microsoft Developers Network Library (MSDN)iVisual Basic支持窗口帮助(WinHelp)和最新的HTML帮助系统8帮助文件的属性帮助文件的属性i使用HelpFile和HelpContextID属性来指向相应的帮助文件,以便为用户提供上下文相关的帮助9 HelpFile属性属性i在设计的时候通过“工程属性”对话框来设置应用程序的帮助文件 。10设置设置HelpFileiHelpFile属性在运行时可以通过两种方法来设置使用App对象或是Err对象iApp对象 使用App

4、关键字访问 指明应用程序的标题、版本、路径、可执行文件名和帮助文件,以及是否有实例在运行 App对象的HelpFile属性用来指定帮助文件的名称 需要有效的WinHelp (.hlp)或HTML Help (.chm)文件 如果指定的文件不存在,则程序会告错 Err对象用来处理运行错误 Err对象也支持HelpFile和HelpContext属性11设置设置HelpFile(续)(续)Private Sub Form_Load()App.HelpFile = App.Path & “ vb98.chmEnd Sub12设置设置HelpFile(续)(续)Private Sub comm

5、and1_Click() Dim msg As String On Error Resume Next Text3.Text = Text1.Text / Text2.Text msg = Err.Number & & Err.HelpFile & & Err.Description MsgBox msgEnd Sub13 HelpContextID属性属性i为应用程序的任何用户界面提供上下文主题帮助i在帮助文件中为每一个主题指定一个标记,这个标记是一个数字ID,它和应用程序中的某一个指定项的主题相关i例如: 可以把一个命令按钮控件的HelpContextID属

6、性设置为10000 在用户选中这个按钮并按下F1时,Visual Basic就会在程序的HelpFile属性指定的帮助文件中寻找Context为10000的帮助文件 如果找到,就会打开一个帮助窗口并显示这个主题;如果没有,就会告错并显示帮助文件的缺省主题i在设计时,HelpContextID属性可以在属性窗口中进行设置14设置设置HelpContextID15“ “Whats This Help” ”属性属性i上下文敏感帮助的替换物i提供不使用帮助窗口的对指定主题的帮助i设置和上下文敏感帮助一样i在设计时设置或在运行时设置都可以i选中控件时可以提供一个到弹出式帮助主题的连接16“ “Whats

7、 This Help” ”属性属性i在用户界面上提供帮助iWinhelp和HTML帮助系统都支持这个属性i“这是什么?”帮助按钮:17“ “这是什么?这是什么?”弹出帮助主题弹出帮助主题i因为“这是什么?“帮助按钮包含在窗口的标题条中,所以窗口的最大化和最小化按钮会被移走18“ “这是什么?这是什么?”帮助按钮帮助按钮i在窗体的标题条上显示: 在属性窗口中把窗体的WhatsThisHelp属性设为True 同时把WhatsThisButton属性设为True 把BorderStyle属性设为“3-Fixed Dialog” 选中想要提供帮助的控件 在属性窗口中,在WhatsThisHelpID

8、属性中输入相关的弹出帮助的上下文ID号19“ “这是什么?这是什么?”帮助按钮(续)帮助按钮(续)i就象上下文敏感帮助需要一个从帮助文件到HelpContextID属性的映射一样,这是什么?帮助也需要从帮助文件到WhatsThisHelpID属性的一个映射20提供工具提示提供工具提示i当光标在一个控件上停留一定时间后就会显示出来的一个小小的标签 i对这个控件的功能给出一个简短的描述21 i在设计时可以按照下面所给的步骤为一个工具条添加工具提示: 在窗体中放置好一个带有按钮的工具条后,用鼠标右键单击要求工具提示的按钮 选中“属性”菜单项以便弹出属性页对话框 在“按钮”卡片上通过选中要设置工具提示

9、的按钮的索引来选中这个按钮 在工具提示文本框中输入帮助文本提供工具提示(续)提供工具提示(续)22提供工具提示(续)提供工具提示(续)属性页对话框23提供工具提示(续)提供工具提示(续)i在运行时刻可以使用下面的方法来把工具条Toolbar1的第二个按钮的tooltiptext属性设置为“Delete a file”:Toolbar1.Buttons(2).ToolTipText = “Delete a file”iVisual Basic的大部分控件在属性页中都支持tooltiptext属性。i通过下面的格式来设置Tooltiptext属性值:command1.ToolTipText = “

10、Click to save”24编辑选项编辑选项i两种通用的文件格式 伪代码(p-code) 本机代码(native code)i一个工程可以编译为这两种格式中的任何一种i这两种格式的主要区别在于可执行文件的大小和程序运行的速度25 伪代码伪代码P-code i介于程序的文本文件和计算机处理器直接执行的本机代码之间的中间代码i在运行时,Visual Basic把每一句伪代码翻译为本机代码,也就是把每一句伪代码转换为计算机处理器可以理解的指令i如果想避免这种转换的话可以直接把程序编译为本机代码格式i在执行时,Visual Basic是按照需要执行编译的 这意味着当我们在Visual Basic中

11、启动一个程序时,只让程序要运行的部分被编译i伪代码指令被转换为处理器可以执行的指令i在运行时,使用一个库在伪代码执行前对它进行解释26伪代码伪代码P-code(续)(续)i优点 比本机代码产生的最终代码少,这样可以减小编译后的文件的大小 编译的速度也比编译本机代码要快i缺点 运行起来比本机代码慢27本机代码本机代码i是处理器使用的语言,所以本机代码可以被处理器直接执行 i可以跳过伪代码直接把程序编译为本机处理器的指令i为用户提供比伪代码更多的优化和调试选项,因此也更可取i当使用扩展的数学计算时本机代码编译执行起来会更快i从“工程(Project)”菜单项中选择“工程属性(Project Pro

12、perties)”对话框就可以选择编译选项28工程属性对话框中的编译选项工程属性对话框中的编译选项29本机代码编译选项本机代码编译选项选项选项说明说明代码速度优化让编译器产生更快的代码 代码大小优化最小化编译后代码的大小。无优化放弃所有的优化选项。针 对 P e n t i u m Pro优化优化代码,使其支持在 Pentium Pro(tm) 处理器上运行。产生符号化调试信息产生 .pdb 文件,其中包含允许用 Microsoft Visual C+ 5.0 或其它兼容调试器进行调试的信息。30本机代码编译选项(续)本机代码编译选项(续)无别名设定通知编译器应用程序不使用别名引用。(别名就是

13、一个名字,它指向的内存位置已经被另外一个名字引用)取消数组边界检查禁用 Visual Basic 的数组边界检查。 缺省情况下Visual Basic 会检查一个数组的索引是否超出边界,如果越界会给出一个错误信息。取消整数溢出检查禁用 Visual Basic 的整数溢出检查。取消浮点错误检查禁用 Visual Basic 的浮点数错误检查。取消Pentium FDIV 安全检查禁用对 Pentium(tm) 处理器浮点数除法的安全检查。允许不舍入的浮点操作允许不用对浮点数进行舍入获取精确值就对浮点数表达式进行比较。31生成编译文件生成编译文件i设置好编译选项后就可以对工程进行编译了i选中“文

14、件(File)”菜单中的“生成工程名称 EXE|DLL”选项i这样就对工程进行编译并检测所有的编译错误,最后在目标目录下生成EXE或DLL文件32条件编译条件编译 i只想编译程序中的部分代码i在不同的版本中可以包括应用程序的某些特别的功能,例如 设计一个可以在不同的平台上运行的应用程序或者 在一个以多种语言发布的应用程序中显示信息i在代码中可以使用预定义的常量来决定编译程序中的哪一部分代码将要被编译33条件编译(续)条件编译(续)i设置条件编译常数有三种方法: 在“工程属性”对话框中 在命令行中 在代码中i条件编译常数有特别的作用范围,如何设置条件编译常数可能取决于希望常数具有怎样的作用范围3

15、4条件编译(续)条件编译(续)#If conGermanVersion ThenMsgbox “Guten Morgen”#ElseIf conFrenchVersion ThenMsgbox “Bon Jour”#Else Msgbox “Good Day”#End If如何设置如何设置范围范围“工程属性”对话框Public 作用于工程中的所有模块命令行Public 作用于工程中的所有模块代码中的 #Const 语句Private 仅作用于声明该常数的模块35条件编译(续)条件编译(续)i为了把一个程序编译为德语版本,从“工程”菜单选择“工程属性” 单击“工程属性”对话框中的“生成”选项卡,

16、在“条件编译参数”字段中键入一个参数,例如 conFrenchVersion = 1i当程序被编译时,该参数将满足 #If.Then 的条件,处于 #If.Then 和 #EndIf 之间的代码将包含进编译后的程序中36条件编译变量条件编译变量i通过冒号间隔来设置多个常数37在命令行中设置常数在命令行中设置常数i如果要从命令行启动编译,可以使用 /d 开关键入条件编译常数 :vb6.exe /Make Project1.vbp /d conGermanVersion=1i命令行的常数声明较之在“工程属性”对话框中键入的常数声明有较高的优先级,但并不清除它们;在“工程属性”对话框中设置的参数对后

17、续的编译保持有效i布尔值True和1相等38#Const语句语句i用来定义条件编译常数#Const constantname = expressioniconstantname是常量的名字,expression可以是文字、其它的条件编译常数或包含算术或逻辑运算符的任意组合i例如,在代码中使用#Const语句来为一个日语版本定义一个条件编译常量:#Const conJapanVersion = 139打包和发布程序打包和发布程序i打包和发布向导 帮助我们为程序创建所需要的安装包装类型 把程序发布到软盘、网络或者Web上 这些文件中包含VB运行时所需要的库、任何其它必需的.dll文件和帮助文件、数

18、据文件、文档和ReadMe文件 创建两种类型的软件包i标准软件包 iInternet软件包40打包和发布程序(续)打包和发布程序(续)i打包 把程序的可执行文件包装到一个称为发布单元的软件包中的操作 易于开发而且易于将应用程序安装到用户的计算机上41启动向导启动向导i一种启动方法 从“开始”菜单中选中“程序” 从Microsoft Visual Studio 6.0中选中Microsoft Visual Basic 6.0工具 选中打包和展开向导i另一种启动方法 从 “ 外 接 程 序 ” 菜 单 中 选 中 “ 外 接 程 序 管 理器” 从外接程序列表中选中打包和展开向导 选中加载行为中的

19、加载/卸载选项,然后单击“确定(OK)”按钮42启动向导(续)启动向导(续)43启动向导(续)启动向导(续)i打包 把应用程序打包为可展开的.cab文件 .cab文件i取代了Visual Basic前面版本中的一长串的压缩文件。i.ocx文件、输入文件.inf和其它的一些相关文件现在都包含在.cab文件中44启动向导(续)启动向导(续)i展开 将软件包发布到软盘、网络或Web媒体上i管理脚本 浏览、编辑或删除包装和部署向导中前面两部分创建的脚本45创建一个安装程序创建一个安装程序i“包类型”窗口显示了两个选项: 标准安装包 相关文件 i我们选中标准安装包来创建一个安装程序,它使用一个setup

20、.exe来安装一个应用程序46创建一个安装程序(续)创建一个安装程序(续)47创建一个安装程序(续)创建一个安装程序(续)i在“包类型”窗口中单击“下一步(Next)”按钮,接着显示的是“打包文件夹”窗口i选择安装包存储的文件夹位置 可以是一个本地的文件夹也可以是一个网络上的某个位置,通过选择“网络”按钮可以选择要存放的网络位置 还可以选择“新建文件夹”来创建一个新的文件夹48创建一个安装程序(续)创建一个安装程序(续)49创建一个安装程序(续)创建一个安装程序(续)i“包含文件”窗口给出了安装包中包含的文件的列表 在这个列表中可以看到我们的程序的可执行文件和其它一些从属文件 如果想添加文件,

21、可以单击“添加”按钮50创建一个安装程序(续)创建一个安装程序(续)51创建一个安装程序(续)创建一个安装程序(续)i“压缩文件选项”窗口 用来指定如何根据发布程序的需要来进行压缩。 多个压缩文件选项i选择合适的选项保证每个压缩文件的大小不超过计划使用的磁盘的容量52创建一个安装程序(续)创建一个安装程序(续)53创建一个安装程序(续)创建一个安装程序(续)54创建一个安装程序(续)创建一个安装程序(续)i“启动菜单项”窗口用来指定应用程序在Windows启动菜单中的位置i“安装位置”窗口用来指定正常安装时各个文件的位置55创建一个安装程序(续)创建一个安装程序(续)56创建一个安装程序(续)

22、创建一个安装程序(续)57创建一个安装程序(续)创建一个安装程序(续)i“共享文件”窗口用来指定安装后哪些文件用作共享文件i最后一个窗口让我们在文本框中输入名称用来保存会话设置以便将来使用58创建一个安装程序(续)创建一个安装程序(续)59创建一个安装程序(续)创建一个安装程序(续)60i开始展开 单击向导中的“展开”按钮i可以选择是展开到一个软盘(如果前面打包选择的是压缩到多个文件),还是展开到光盘,或是发布到网络上,或是发布到Web(Web公布选项)上展开一个包展开一个包61展开到软盘展开到软盘i用软盘作为发布的媒体时,程序的大小受到很大的限制i因为一张高密度的软盘可以存储的内容也就是1.

23、44 MB,这就限制了程序的大小要在一张软盘的存储范围之内i而且,如果对程序有了修改,则软盘需要重新创建、复制和发布 i要求选中的软盘驱动器是存在的i优点 用来读取软盘的硬件设备几乎在每台电脑上都可以找到,另外一个好处是软盘的便携性62展开方法窗口展开方法窗口63展开到光盘展开到光盘i容量比软盘要大得多,一张光盘可以容纳600 MBi程序的大小不再受限制i使用光盘来发布程序也很便捷i光盘可以完全自启动iWindows 95/98 和 Windows NT都支持自启动的光驱只要用户把光盘放入光驱中就可以开始启动安装程序64网络发布网络发布i需要考虑程序的大小、网络的带宽、速度和网络连接的可靠性i

24、两种方法: 第一种方法是把网络作为一种媒体用来把应用程序传输到客户端 应用程序保存在服务器端,被下载并安装到客户端 第二种方法是创建一个网络安装,只有很少的几个文件拷贝到客户端 每当客户端执行程序时,再把必要的文件下载到客户端的RAM中65网络发布(续)网络发布(续)i尽管使用基于网络的发布需要大量的网络数据传输,但是这种方法还是很有益处的i因为文件是集中存放在服务器端,所以对文件做修改和更新是很容易实现的i不需要象使用软盘那样多次发布i在打包和展开向导中如果选择了网络发布,则安装包会拷贝到一个选中的网络环境的某个位置上66文件夹窗口文件夹窗口67在在Web上展开上展开i可以让我们把应用程序发

25、布到Internet上i优点: 客户端不需要运行任何安装工具来把应用程序安装到本机上,只需要一个浏览器来和应用程序进行交互。 省去了邮寄软盘给远程客户的手续 用户不需要在安装时和多张磁盘打交道 保证用户总是可以获得程序的最新版本,也就是说任何更新立即有效i实现Web发布,要选中“展开方法”窗口中的“Web发布”选项68在在Web上展开(续)上展开(续)69“ “展开项展开项”窗口窗口70展开的附加项展开的附加项71设置设置Web发布站点发布站点72卸载程序卸载程序iMicrosoft Windows 95/98和Windows NT要求所有在Windows操作系统中安装的应用程序都要有相应的卸

26、载程序i用户安装应用程序 setup程序会把一个St6unst.exe拷贝到Windows 或者Winnt目录下 Visual Basic会在应用程序的安装目录下产生一个log文件(St6unst.log)73卸载程序(续)卸载程序(续)i.log文件中包含下面一些信息: 在安装时创建的目录 安装文件的所在位置 创建或修改的注册表的入口 Windows 创建的开始菜单的入口i通过控制面板中的添加/删除程序来卸载一个应用程序74Setup工具包工具包i是一个和Visual Basic一块安装的程序,打包和展开向导在创建一个安装程序时使用到它i包含有应用程序的Setup程序在把文件安装到用户的计算

27、机上时所用到的窗体和代码i打包和展开向导中包含了Setup工具包创建的setup1.exe文件75Setup工具包(续)工具包(续)i可以用来修改安装程序过程中的屏幕界面i直接创建一个安装程序i位于Visual Basic 根目录下的WizardsPDWizardSetup1子目录下76Setup工具包(续)工具包(续)i在安装过程中有两个setup程序: setup.exe i在 用 户 的 计 算 机 上 执 行 预 安 装 过 程 , 包 括 安 装setup1.exe和任何其它主安装程序需要的文件 setup1.exei是Setup工具包自己定义的77TreeView控件控件i提供了一

28、种通用的组织相关数据的方法i把数据组织为分层的树状i数据从一个根结点开始,下面是一些相关的结点i每一个结点称为根结点的子结点i每个子结点又可以有它自己的子结点,如此类推78Windows资源管理器(资源管理器(TreeView的例子)的例子)79TreeView控件(续)控件(续)i用户可以通过折叠或展开某个分支来查看感兴趣的信息i使用结点的属性和事件可以对每个结点的信息进行操作i使用结点可以显示图片80TreeView控件(续)控件(续)i我们也可以使用一个复选框来让用户根据需要标记某些特殊的结点i需要通过在“部件”对话框中选中选项“Microsoft Windows Common Cont

29、rols 6.0”才能让它在工具箱中显示81属性属性iLineStyle 返回或设置在结点间显示的线的类型object.LineStyle =number number参数的设置如下:itvwTreeLines对应值0,它要求显示结点到它的父结点的连线itvwRootLines对应值1,不仅要求显示结点到它的父结点的连线,而且要求显示到根结点的连线 使用格式如下:Treeview1.LineStyle = tvwRootLines82属性(续)属性(续)iNodes 使用下面的格式来返回到结点集合中一个结点的引用: object.Nodes 可以使用标准的集合方法来处理Nodes对象(例如,A

30、dd和Remove方法) 我们可以使用集合中每个元素的下标来访问元素,或者使用元素对应的唯一关键字(保存在Key属性中)来访问这个元素 Nodes集合的Add方法使用格式如下:object.Nodes.Add (relative, relationship, key, text, image, selectedimage)83Add方法的参数设置方法的参数设置设置值设置值对应对应值值说明说明tvwFirst0这个结点被插入到和relative 参数指定的结点同一级的所有结点的前面。tvwLast1这个结点被插入到和relative 参数指定的结点同一级的所有结点的后面。一般情况下所有随后结点都

31、是紧跟着前一个插入。tvwNext2(缺省)结点作为relative 参数指定的结点的后一个结点插入。tvwPrevious3结点作为relative 参数指定的结点的前一个结点插入。tvwChild4插入的结点作为relative 参数指定的结点的一个子结点。84Add方法的参数方法的参数irelative 用来给出新结点和这个已存在结点的关系 irelationship 按照表中所给的参数值设置新结点的相对位置ikey 为新结点指定一个唯一的关键字itext 给出用来显示结点时使用的文本信息iimage 给定在和TreeView控件相关的图片列表中一幅图片的索引值iselectedimag

32、e 指定一幅在图片列表中的图片的索引值,这幅图片在结点被选中时显示85Node对象的属性对象的属性 iChecked 返回结点对应的复选框是否被选中object.Checked = booleaniExpanded 返回一个值,从这个值可以判断一个结点当前是展开的还是折叠的object.Expanded= boolean86Node对象的属性(续)对象的属性(续)iIndex 用来返回或设置结点集合中结点的唯一标志object.IndexiChildren 返回一个结点对象包含的子结点的个数object.Children87Node对象的属性(续)对象的属性(续)iSorted 返回或设置一个

33、值,用来决定是否对该结点的子结点按照字母顺序进行排序 也可以用来设置一个值以决定是否对一个TreeView 控件的根一级的结点按照字母顺序进行排序 object.Sorted =Boolean 布尔值参数的设置含义如下:iTrue - 按照结点的Text 属性值进行按字母顺序的排序iFalse -不进行排序 在代码中:node.Sorted = True88Node对象的属性(续)对象的属性(续)iStyle 设置TreeView控件中每个结点对相对应显示的图片的类型(图片、文本、加号/减号或者线)和文本object.Style =number Number参数的每个设置值的含义如下:i0 只

34、能为文本i1 可以同时设置图片和文本 i2 可以同时设置加号/减号和文本 i3 可以同时设置加号/减号、图片和文本 89Node对象的属性(续)对象的属性(续)i4 可以同时设置线和文本i5 可以同时设置线、图片和文本 i6 可以同时设置线、加号/减号和文本 i7 (缺省)可以同时设置线、加号/减号、图片和文本 在代码中:Treeview1.Style = tvwTreelinesPlusMinusText90Node对象的属性(续)对象的属性(续)iCheckBoxes 决定是否在一个结点旁设置一个复选框object.CheckBoxes =Boolean 如 果 设 置 为 T r u e

35、 , 则 在 结 点 旁 设 置 复 选框,否则不设置 TreeView1.Checkboxes = True91事件事件iExpand 在TreeView控件中的一个结点对象被展开时发生,也就是当它的子结点变为可见的时候发生Private Sub object_Expand(ByVal node As Node)i这里的node 指这个被展开的结点 发生在Click 和DblClick 事件之后92事件(续)事件(续)Private Sub TreeView1_Expand(ByVal Node As Node)If Node.Index 1 ThenNode.Expanded = FalseEnd IfEnd Sub93事件(续)事件(续)iCollapse 当TreeView 控件中的任何结点被折叠时触发 Private Sub object_Collapse(ByVal node As Node) i这儿的node 参数指那个被点中的结点对象 在标准Click 事件之前发生94事件(续)事件(续)Private Sub TreeView1_Collapse(ByVal Node

温馨提示

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

评论

0/150

提交评论