




已阅读5页,还剩95页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1,基于VB的桌面系统开发方案,程序的打包和展开,8,2,课题目标,学会如何为应用程序创建帮助文件了解WhatsThisHelp和ToolTipText属性的使用区分P-code(伪代码)和Nativecode(本机代码)两个编译选项的不同了解使用打包和开发向导进行程序打包和开发的步骤了解TreeView控件的使用,3,回顾,介绍进程和线程的概念两种部件进程内部件(.dll)和进程外部件(.exe)。在VisualBasic中创建一个ActiveXDLL简要说明了对象浏览器在工程中的作用类型库和对象的概念介绍了ActiveX文档使用DHTML应用程序创建Internet上的文档,4,如何创建帮助,按下F1就可以调出相关主题的帮助文件一个典型的帮助窗口包括三个部分:目录显示所有帮助文件的结构信息只用鼠标就可以跳到相应主题索引和一本书的索引类似按照字母顺序列出帮助文件中创建的所有主题的一个列表。主题是我们在帮助文件中生成的主题的名称,5,如何创建帮助(续),查找通过创建一个帮助文件信息的数据库来实现的跳跃式的查询数据库中包括了所有帮助文件中的单词用户在不知道主题的情况下可以通过指定一个单词进行查找,6,MSWord的帮助对话框,7,VisualBasic的帮助,VisualBasic6.0提供详细的帮助系统它有功能强大的帮助系统,称为MicrosoftDevelopersNetworkLibrary(MSDN)VisualBasic支持窗口帮助(WinHelp)和最新的HTML帮助系统,8,帮助文件的属性,使用HelpFile和HelpContextID属性来指向相应的帮助文件,以便为用户提供上下文相关的帮助,9,HelpFile属性,在设计的时候通过“工程属性”对话框来设置应用程序的帮助文件。,10,设置HelpFile,HelpFile属性在运行时可以通过两种方法来设置使用App对象或是Err对象App对象使用App关键字访问指明应用程序的标题、版本、路径、可执行文件名和帮助文件,以及是否有实例在运行App对象的HelpFile属性用来指定帮助文件的名称需要有效的WinHelp(.hlp)或HTMLHelp(.chm)文件如果指定的文件不存在,则程序会告错Err对象用来处理运行错误Err对象也支持HelpFile和HelpContext属性,11,设置HelpFile(续),PrivateSubForm_Load()App.HelpFile=App.Path&“vb98.chmEndSub,12,设置HelpFile(续),PrivateSubcommand1_Click()DimmsgAsStringOnErrorResumeNextText3.Text=Text1.Text/Text2.Textmsg=Err.Number&Err.HelpFile&Err.DescriptionMsgBoxmsgEndSub,13,HelpContextID属性,为应用程序的任何用户界面提供上下文主题帮助在帮助文件中为每一个主题指定一个标记,这个标记是一个数字ID,它和应用程序中的某一个指定项的主题相关例如:可以把一个命令按钮控件的HelpContextID属性设置为10000在用户选中这个按钮并按下F1时,VisualBasic就会在程序的HelpFile属性指定的帮助文件中寻找Context为10000的帮助文件如果找到,就会打开一个帮助窗口并显示这个主题;如果没有,就会告错并显示帮助文件的缺省主题在设计时,HelpContextID属性可以在属性窗口中进行设置,14,设置HelpContextID,15,“WhatsThisHelp”属性,上下文敏感帮助的替换物提供不使用帮助窗口的对指定主题的帮助设置和上下文敏感帮助一样在设计时设置或在运行时设置都可以选中控件时可以提供一个到弹出式帮助主题的连接,16,“WhatsThisHelp”属性,在用户界面上提供帮助Winhelp和HTML帮助系统都支持这个属性“这是什么?”帮助按钮:,17,“这是什么?”弹出帮助主题,因为“这是什么?“帮助按钮包含在窗口的标题条中,所以窗口的最大化和最小化按钮会被移走,18,“这是什么?”帮助按钮,在窗体的标题条上显示:在属性窗口中把窗体的WhatsThisHelp属性设为True同时把WhatsThisButton属性设为True把BorderStyle属性设为“3-FixedDialog”选中想要提供帮助的控件在属性窗口中,在WhatsThisHelpID属性中输入相关的弹出帮助的上下文ID号,19,“这是什么?”帮助按钮(续),就象上下文敏感帮助需要一个从帮助文件到HelpContextID属性的映射一样,这是什么?帮助也需要从帮助文件到WhatsThisHelpID属性的一个映射,20,提供工具提示,当光标在一个控件上停留一定时间后就会显示出来的一个小小的标签对这个控件的功能给出一个简短的描述,21,在设计时可以按照下面所给的步骤为一个工具条添加工具提示:在窗体中放置好一个带有按钮的工具条后,用鼠标右键单击要求工具提示的按钮选中“属性”菜单项以便弹出属性页对话框在“按钮”卡片上通过选中要设置工具提示的按钮的索引来选中这个按钮在工具提示文本框中输入帮助文本,提供工具提示(续),22,提供工具提示(续),属性页对话框,23,提供工具提示(续),在运行时刻可以使用下面的方法来把工具条Toolbar1的第二个按钮的tooltiptext属性设置为“Deleteafile”:Toolbar1.Buttons(2).ToolTipText=“Deleteafile”VisualBasic的大部分控件在属性页中都支持tooltiptext属性。通过下面的格式来设置Tooltiptext属性值:command1.ToolTipText=“Clicktosave”,24,编辑选项,两种通用的文件格式伪代码(p-code)本机代码(nativecode)一个工程可以编译为这两种格式中的任何一种这两种格式的主要区别在于可执行文件的大小和程序运行的速度,25,伪代码P-code,介于程序的文本文件和计算机处理器直接执行的本机代码之间的中间代码在运行时,VisualBasic把每一句伪代码翻译为本机代码,也就是把每一句伪代码转换为计算机处理器可以理解的指令如果想避免这种转换的话可以直接把程序编译为本机代码格式在执行时,VisualBasic是按照需要执行编译的这意味着当我们在VisualBasic中启动一个程序时,只让程序要运行的部分被编译伪代码指令被转换为处理器可以执行的指令在运行时,使用一个库在伪代码执行前对它进行解释,26,伪代码P-code(续),优点比本机代码产生的最终代码少,这样可以减小编译后的文件的大小编译的速度也比编译本机代码要快缺点运行起来比本机代码慢,27,本机代码,是处理器使用的语言,所以本机代码可以被处理器直接执行可以跳过伪代码直接把程序编译为本机处理器的指令为用户提供比伪代码更多的优化和调试选项,因此也更可取当使用扩展的数学计算时本机代码编译执行起来会更快从“工程(Project)”菜单项中选择“工程属性(ProjectProperties)”对话框就可以选择编译选项,28,工程属性对话框中的编译选项,29,本机代码编译选项,30,本机代码编译选项(续),31,生成编译文件,设置好编译选项后就可以对工程进行编译了选中“文件(File)”菜单中的“生成工程名称EXE|DLL”选项这样就对工程进行编译并检测所有的编译错误,最后在目标目录下生成EXE或DLL文件,32,条件编译,只想编译程序中的部分代码在不同的版本中可以包括应用程序的某些特别的功能,例如设计一个可以在不同的平台上运行的应用程序或者在一个以多种语言发布的应用程序中显示信息在代码中可以使用预定义的常量来决定编译程序中的哪一部分代码将要被编译,33,条件编译(续),设置条件编译常数有三种方法:在“工程属性”对话框中在命令行中在代码中条件编译常数有特别的作用范围,如何设置条件编译常数可能取决于希望常数具有怎样的作用范围,34,条件编译(续),#IfconGermanVersionThenMsgbox“GutenMorgen”#ElseIfconFrenchVersionThenMsgbox“BonJour”#ElseMsgbox“GoodDay”#EndIf,35,条件编译(续),为了把一个程序编译为德语版本,从“工程”菜单选择“工程属性”单击“工程属性”对话框中的“生成”选项卡,在“条件编译参数”字段中键入一个参数,例如conFrenchVersion=1当程序被编译时,该参数将满足#If.Then的条件,处于#If.Then和#EndIf之间的代码将包含进编译后的程序中,36,条件编译变量,通过冒号间隔来设置多个常数,37,在命令行中设置常数,如果要从命令行启动编译,可以使用/d开关键入条件编译常数:vb6.exe/MakeProject1.vbp/dconGermanVersion=1命令行的常数声明较之在“工程属性”对话框中键入的常数声明有较高的优先级,但并不清除它们;在“工程属性”对话框中设置的参数对后续的编译保持有效布尔值True和1相等,38,#Const语句,用来定义条件编译常数#Constconstantname=expressionconstantname是常量的名字,expression可以是文字、其它的条件编译常数或包含算术或逻辑运算符的任意组合例如,在代码中使用#Const语句来为一个日语版本定义一个条件编译常量:#ConstconJapanVersion=1,39,打包和发布程序,打包和发布向导帮助我们为程序创建所需要的安装包装类型把程序发布到软盘、网络或者Web上这些文件中包含VB运行时所需要的库、任何其它必需的.dll文件和帮助文件、数据文件、文档和ReadMe文件创建两种类型的软件包标准软件包Internet软件包,40,打包和发布程序(续),打包把程序的可执行文件包装到一个称为发布单元的软件包中的操作易于开发而且易于将应用程序安装到用户的计算机上,41,启动向导,一种启动方法从“开始”菜单中选中“程序”从MicrosoftVisualStudio6.0中选中MicrosoftVisualBasic6.0工具选中打包和展开向导另一种启动方法从“外接程序”菜单中选中“外接程序管理器”从外接程序列表中选中打包和展开向导选中加载行为中的加载/卸载选项,然后单击“确定(OK)”按钮,42,启动向导(续),43,启动向导(续),打包把应用程序打包为可展开的.cab文件.cab文件取代了VisualBasic前面版本中的一长串的压缩文件。.ocx文件、输入文件.inf和其它的一些相关文件现在都包含在.cab文件中,44,启动向导(续),展开将软件包发布到软盘、网络或Web媒体上管理脚本浏览、编辑或删除包装和部署向导中前面两部分创建的脚本,45,创建一个安装程序,“包类型”窗口显示了两个选项:标准安装包相关文件我们选中标准安装包来创建一个安装程序,它使用一个setup.exe来安装一个应用程序,46,创建一个安装程序(续),47,创建一个安装程序(续),在“包类型”窗口中单击“下一步(Next)”按钮,接着显示的是“打包文件夹”窗口选择安装包存储的文件夹位置可以是一个本地的文件夹也可以是一个网络上的某个位置,通过选择“网络”按钮可以选择要存放的网络位置还可以选择“新建文件夹”来创建一个新的文件夹,48,创建一个安装程序(续),49,创建一个安装程序(续),“包含文件”窗口给出了安装包中包含的文件的列表在这个列表中可以看到我们的程序的可执行文件和其它一些从属文件如果想添加文件,可以单击“添加”按钮,50,创建一个安装程序(续),51,创建一个安装程序(续),“压缩文件选项”窗口用来指定如何根据发布程序的需要来进行压缩。多个压缩文件选项选择合适的选项保证每个压缩文件的大小不超过计划使用的磁盘的容量,52,创建一个安装程序(续),53,创建一个安装程序(续),54,创建一个安装程序(续),“启动菜单项”窗口用来指定应用程序在Windows启动菜单中的位置“安装位置”窗口用来指定正常安装时各个文件的位置,55,创建一个安装程序(续),56,创建一个安装程序(续),57,创建一个安装程序(续),“共享文件”窗口用来指定安装后哪些文件用作共享文件最后一个窗口让我们在文本框中输入名称用来保存会话设置以便将来使用,58,创建一个安装程序(续),59,创建一个安装程序(续),60,开始展开单击向导中的“展开”按钮可以选择是展开到一个软盘(如果前面打包选择的是压缩到多个文件),还是展开到光盘,或是发布到网络上,或是发布到Web(Web公布选项)上,展开一个包,61,展开到软盘,用软盘作为发布的媒体时,程序的大小受到很大的限制因为一张高密度的软盘可以存储的内容也就是1.44MB,这就限制了程序的大小要在一张软盘的存储范围之内而且,如果对程序有了修改,则软盘需要重新创建、复制和发布要求选中的软盘驱动器是存在的优点用来读取软盘的硬件设备几乎在每台电脑上都可以找到,另外一个好处是软盘的便携性,62,展开方法窗口,63,展开到光盘,容量比软盘要大得多,一张光盘可以容纳600MB程序的大小不再受限制使用光盘来发布程序也很便捷光盘可以完全自启动Windows95/98和WindowsNT都支持自启动的光驱只要用户把光盘放入光驱中就可以开始启动安装程序,64,网络发布,需要考虑程序的大小、网络的带宽、速度和网络连接的可靠性两种方法:第一种方法是把网络作为一种媒体用来把应用程序传输到客户端应用程序保存在服务器端,被下载并安装到客户端第二种方法是创建一个网络安装,只有很少的几个文件拷贝到客户端每当客户端执行程序时,再把必要的文件下载到客户端的RAM中,65,网络发布(续),尽管使用基于网络的发布需要大量的网络数据传输,但是这种方法还是很有益处的因为文件是集中存放在服务器端,所以对文件做修改和更新是很容易实现的不需要象使用软盘那样多次发布在打包和展开向导中如果选择了网络发布,则安装包会拷贝到一个选中的网络环境的某个位置上,66,文件夹窗口,67,在Web上展开,可以让我们把应用程序发布到Internet上优点:客户端不需要运行任何安装工具来把应用程序安装到本机上,只需要一个浏览器来和应用程序进行交互。省去了邮寄软盘给远程客户的手续用户不需要在安装时和多张磁盘打交道保证用户总是可以获得程序的最新版本,也就是说任何更新立即有效实现Web发布,要选中“展开方法”窗口中的“Web发布”选项,68,在Web上展开(续),69,“展开项”窗口,70,展开的附加项,71,设置Web发布站点,72,卸载程序,MicrosoftWindows95/98和WindowsNT要求所有在Windows操作系统中安装的应用程序都要有相应的卸载程序用户安装应用程序setup程序会把一个St6unst.exe拷贝到Windows或者Winnt目录下VisualBasic会在应用程序的安装目录下产生一个log文件(St6unst.log),73,卸载程序(续),.log文件中包含下面一些信息:在安装时创建的目录安装文件的所在位置创建或修改的注册表的入口Windows创建的开始菜单的入口通过控制面板中的添加/删除程序来卸载一个应用程序,74,Setup工具包,是一个和VisualBasic一块安装的程序,打包和展开向导在创建一个安装程序时使用到它包含有应用程序的Setup程序在把文件安装到用户的计算机上时所用到的窗体和代码打包和展开向导中包含了Setup工具包创建的setup1.exe文件,75,Setup工具包(续),可以用来修改安装程序过程中的屏幕界面直接创建一个安装程序位于VisualBasic根目录下的WizardsPDWizardSetup1子目录下,76,Setup工具包(续),在安装过程中有两个setup程序:setup.exe在用户的计算机上执行预安装过程,包括安装setup1.exe和任何其它主安装程序需要的文件setup1.exe是Setup工具包自己定义的,77,TreeView控件,提供了一种通用的组织相关数据的方法把数据组织为分层的树状数据从一个根结点开始,下面是一些相关的结点每一个结点称为根结点的子结点每个子结点又可以有它自己的子结点,如此类推,78,Windows资源管理器(TreeView的例子),79,TreeView控件(续),用户可以通过折叠或展开某个分支来查看感兴趣的信息使用结点的属性和事件可以对每个结点的信息进行操作使用结点可以显示图片,80,TreeView控件(续),我们也可以使用一个复选框来让用户根据需要标记某些特殊的结点需要通过在“部件”对话框中选中选项“MicrosoftWindowsCommonControls6.0”才能让它在工具箱中显示,81,属性,LineStyle返回或设置在结点间显示的线的类型object.LineStyle=numbernumber参数的设置如下:tvwTreeLines对应值0,它要求显示结点到它的父结点的连线tvwRootLines对应值1,不仅要求显示结点到它的父结点的连线,而且要求显示到根结点的连线使用格式如下:Treeview1.LineStyle=tvwRootLines,82,属性(续),Nodes使用下面的格式来返回到结点集合中一个结点的引用:object.Nodes可以使用标准的集合方法来处理Nodes对象(例如,Add和Remove方法)我们可以使用集合中每个元素的下标来访问元素,或者使用元素对应的唯一关键字(保存在Key属性中)来访问这个元素Nodes集合的Add方法使用格式如下:object.Nodes.Add(relative,relationship,key,text,image,selectedimage),83,Add方法的参数设置,84,Add方法的参数,relative用来给出新结点和这个已存在结点的关系relationship按照表中所给的参数值设置新结点的相对位置key为新结点指定一个唯一的关键字text给出用来显示结点时使用的文本信息image给定在和TreeView控件相关的图片列表中一幅图片的索引值selectedimage指定一幅在图片列表中的图片的索引值,这幅图片在结点被选中时显示,85,Node对象的属性,Checked返回结点对应的复选框是否被选中object.Checked=booleanExpanded返回一个值,从这个值可以判断一个结点当前是展开的还是折叠的object.Expanded=boolean,86,Node对象的属性(续),Index用来返回或设置结点集合中结点的唯一标志object.IndexChildren返回一个结点对象包含的子结点的个数object.Children,87,Node对象的属性(续),Sorted返回或设置一个值,用来决定是否对该结点的子结点按照字母顺序进行排序也可以用来设置一个值以决定是否对一个TreeView控件的根一级的结点按照字母顺序进行排序object.Sorted=Boolean布尔值参数的设置含义如下:True-按照结点的Text属性值进行按字母顺序的排序False-不进行排序在代码中:node.Sorted=True,88,Node对象的属性(续),Style设置TreeView控件中每个结点对相对应显示的图片的类型(图片、文本、加号/减号或者线)和文本object.Style=numberNumber参数的每个设置值的含义如下:0只能为文本1可以同时设置图片和文本2可以同时设置加号/减号和文本3可以同时设置加号/减号、图片和文本,89,Node对象的属性(续),4可以同时设置线和文本5可以同时设置线、图片和文本6可以同时设置线、加号/减号和文本7(缺省)可以同时设置线、加号/减号、图片和文本在代码中:Treeview1.Style=tvwTreelinesPlusMinusText,90,Node对象的属性(续),CheckBoxes决定是否在一个结点旁设置一个复选框object.CheckBoxes=Boolean如果设置为True,则在结点旁设置复选框,否则不设置TreeView1.Checkboxes=True,91,事件,Expand在TreeView控件中的一个结点对象被展开时发生,也就是当它的子结点变为可见的时候发生PrivateSubobject_Expand(ByValnodeAsNode)这里的node指这个被展开的结点发生在Click和DblClick事件之后,92,事件(续),PrivateSubTreeView1_Expand(ByValNodeAsNode)IfNode.Index1ThenNode.Expanded=FalseEndIfEndSub,93,事件(续),Collapse当TreeView控件中的任何结点被折叠时触发PrivateSubobject_Collapse(ByValnodeAsNode)这儿的node参数指那个被点中的结点对象在标准Click事件之前发生,94,事件(续),PrivateSubTreeView1_Collapse(ByValNodeAsNode)IfNode.Children1ThenNode.Expanded=TrueEndIfEndSub,95,事件(续)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025茶叶项目投资经营合同
- 天网设备维修合同范本
- 内部分红合同范本
- 沙食料供货合同范本
- 中药硫黄销售合同范本
- 上海宝马销售合同范本
- 公路监控工程合同范本
- 专利公众意见 合同范本
- 2025关于企业股权转让合同
- 机械施工工程合同范本
- 公司领导财务知识培训课件
- 2025年郑州银行招聘考试(行政能力测验)历年参考题库含答案详解(5套)
- 园艺生物技术应用与发展
- 子痫患者护理查房
- 2025上海市八年级升九年级数学暑假提升讲义:相似三角形压轴题(六大题型)原卷版
- 2025年工业互联网工程技术人员考核试题题库及答案
- 农行OCRM系统讲解
- 医疗护理员职业技能竞赛试题及答案
- 2025年高端美食主题餐厅餐饮服务整体外包合同
- 体育课培训课件
- 工贸安全员考试题库及答案大全
评论
0/150
提交评论