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

下载本文档

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

文档简介

基于VB的桌面系统开发方案程序的打包和展开课题目标学会如何为应用程序创建帮助文件了解What’s

ThisHelp和ToolTipText

属性的使用区分P-code(伪代码)和Native

code(本机代码)两个编译选项的不同了解使用打包和开发向导进行程序打包和开发的步骤了解TreeView

控件的使用回顾介绍进程和线程的概念两种部件——进程内部件(.dll)和进程外部件(.exe)。在Visual

Basic中创建一个ActiveX

DLL简要说明了对象浏览器在工程中的作用类型库和对象的概念介绍了ActiveX文档使用DHTML应用程序创建Internet

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

Word的帮助对话框Visual

Basic的帮助Visual

Basic

6.0提供详细的帮助系统它有功能强大的帮助系统,称为

Microsoft

Developer’sNetwork

Library

(MSDN)Visual Basic

支持窗口帮助(

WinHelp

)和最新的HTML帮助系统帮助文件的属性

使用HelpFile和HelpContextID属性来指向相应的帮助文件,以便为用户提供上下文相关的帮助HelpFile属性

在设计的时候通过“工程属性”对话框来设置应用程序的帮助文件。设置HelpFileHelpFile属性在运行时可以通过两种方法来设置——使用App对象或是Err对象App对象使用App

关键字访问指明应用程序的标题、版本、路径、可执行文件名和帮助文件,以及是否有实例在运行App对象的HelpFile属性用来指定帮助文件的名称需要有效的WinHelp

(.hlp)或HTML

Help(.chm)文件如果指定的文件不存在,则程序会告错Err对象用来处理运行错误Err对象也支持HelpFile和HelpContext属性设置HelpFile(续)Private

Sub

Form_Load()App.HelpFile

=

App.Path

&“\

vb98.chm"End

Sub设置HelpFile(续)Private

Sub

command1_Click()Dim

msg

AsStringOn

Error

Resume

NextText3.Text

=

Text1.Text

/

Text2.Textmsg

=

Err.Number

&

"

"

&

Err.HelpFile

&

"

"

&

Err.DescriptionMsgBox

msgEnd

SubHelpContextID属性为应用程序的任何用户界面提供上下文主题帮助在帮助文件中为每一个主题指定一个标记,这个标记是一个数字ID,它和应用程序中的某一个指定项的主题相关例如:可以把一个命令按钮控件的HelpContextID属性设置为10000在用户选中这个按钮并按下F1时,Visual

Basic就会在程序的

HelpFile属性指定的帮助文件中寻找Context为10000的帮助文件如果找到,就会打开一个帮助窗口并显示这个主题;如果没有,就会告错并显示帮助文件的缺省主题在设计时,HelpContextID属性可以在属性窗口中进行设置设置HelpContextID“What’s

ThisHelp”属性上下文敏感帮助的替换物提供不使用帮助窗口的对指定主题的帮助设置和上下文敏感帮助一样在设计时设置或在运行时设置都可以选中控件时可以提供一个到弹出式帮助主题的连接“What’s

ThisHelp”属性在用户界面上提供帮助Winhelp和HTML帮助系统都支持这个属性“这是什么?”帮助按钮:“这是什么?”弹出帮助主题

因为“这是什么?“帮助按钮包含在窗口的标题条中,所以窗口的最大化和最小化按钮会被移走“这是什么?”帮助按钮在窗体的标题条上显示:在属性窗口中把窗体的WhatsThisHelp属性设为True同时把What’sThisButton属性设为True把BorderStyle属性设为“3-Fixed

Dialog”选中想要提供帮助的控件在属性窗口中,在WhatsThisHelpID属性中输入相关的弹出帮助的上下文ID号“这是什么?”帮助按钮(续)

就象上下文敏感帮助需要一个从帮助文件到HelpContextID属性的映射一样,‘这是什么?’帮助也需要从帮助文件到

What’sThisHelpID属性的一个映射提供工具提示当光标在一个控件上停留一定时间后就会显示出来的一个小小的标签对这个控件的功能给出一个简短的描述在设计时可以按照下面所给的步骤为一个工具条添加工具提示:在窗体中放置好一个带有按钮的工具条后,用鼠标右键单击要求工具提示的按钮选中“属性”菜单项以便弹出属性页对话框在“按钮”卡片上通过选中要设置工具提示的按钮的索引来选中这个按钮在工具提示文本框中输入帮助文本提供工具提示(续)提供工具提示(续)属性页对话框提供工具提示(续)在运行时刻可以使用下面的方法来把工具条

Toolbar1的第二个按钮的tooltiptext属性设置为

“Delete

a

file”:Toolbar1.Buttons(2).ToolTipText

=“Delete

a

file”Visual

Basic

的大部分控件在属性页中都支持tooltiptext属性。通过下面的格式来设置Tooltiptext属性值:command1.ToolTipText

=

“Click

to

save”编辑选项两种通用的文件格式

–伪代码(p-code)本机代码(nativecode)一个工程可以编译为这两种格式中的任何一种这两种格式的主要区别在于可执行文件的大小和程序运行的速度伪代码P-code介于程序的文本文件和计算机处理器直接执行的本机代码之间的中间代码在运行时,Visual

Basic把每一句伪代码翻译为本机代码,也就是把每一句伪代码转换为计算机处理器可以理解的指令如果想避免这种转换的话可以直接把程序编译为本机代码格式在执行时,Visual

Basic是按照需要执行编译的–

这意味着当我们在Visual

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

Pro优化优化代码,使其支持在PentiumPro(tm)处理器上运行。产生符号化调试信息产生

.pdb

文件,其中包含允许用

Microsoft

Visual

C++

5.0

或其它兼容调试器进行调试的信息。本机代码编译选项(续)无别名设定通知编译器应用程序不使用别名引用。(别名就是一个名字,它指向的内存位置已经被另外一个名字引用)取消数组边界检查禁用Visual

Basic

的数组边界检查。缺省情况下VisualBasic会检查一个数组的索引是否超出边界,如果越界会给出一个错误信息。取消整数溢出检查禁用Visual

Basic

的整数溢出检查。取消浮点错误检查禁用Visual

Basic

的浮点数错误检查。取消PentiumFDIV安全检查禁用对

Pentium(tm)

处理器浮点数除法的安全检查。允许不舍入的浮点操作允许不用对浮点数进行舍入获取精确值就对浮点数表达式进行比较。生成编译文件设置好编译选项后就可以对工程进行编译了选中

文件(

File

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

conGermanVersion

ThenMsgbox

“Guten

Morgen”#ElseIf

conFrenchVersionThenMsgbox

“Bon

Jour”#ElseMsgbox

“GoodDay”#End

If如何设置范围“工程属性”对话框Public

作用于工程中的所有模块命令行Public

作用于工程中的所有模块代码中的#Const

语句Private

仅作用于声明该常数的模块条件编译(续)为了把一个程序编译为德语版本,从“工程”菜单选择“工程属性

单击

工程属性

对话框中的

生成

选项卡,在

“ 条件编译参数

” 字段中conFrenchVersion=

–1当程序被编译时,该参数将满足#If...Then

的条件,处于#If...Then

和#EndIf

之间的代码将包含进编译后的程序中条件编译变量

通过冒号间隔来设置多个常数在命令行中设置常数如果要从命令行启动编译,可以使用

/d

开关键入条件编译常数

:vb6.exe

/Make

Project1.vbp

/d

conGermanVersion=–1命令行的常数声明较之在“工程属性”对话框中键入的常数声明有较高的优先级,但并不清除它们;在“工程属性”对话框中设置的参数对后续的编译保持有效布尔值True和–1相等#Const语句用来定义条件编译常数#Const

constantname

=

expressionconstantname是常量的名字,expression可以是文字、其它的条件编译常数或包含算术或逻辑运算符的任意组合例如,在代码中使用#Const语句来为一个日语版本定义一个条件编译常量:#Const

conJapanVersion

=

1打包和发布程序打包和发布向导帮助我们为程序创建所需要的安装包装类型把程序发布到软盘、网络或者Web上这些文件中包含VB运行时所需要的库、任何其它必需的.dll文件和帮助文件、数据文件、文档和ReadMe文件创建两种类型的软件包标准软件包Internet软件包打包和发布程序(续)打包把程序的可执行文件包装到一个称为发布单元的软件包中的操作易于开发而且易于将应用程序安装到用户的计算机上启动向导一种启动方法从“开始”菜单中选中“程序”从Microsoft

Visual

Studio

6.0中选中Microsoft

Visual

Basic6.0工具选中打包和展开向导另一种启动方法从“外接程序”菜单中选中“外接程序管理器”从外接程序列表中选中打包和展开向导选中加载行为中的加载/卸载选项,然后单击“确定(OK)”按钮启动向导(续)启动向导(续)打包把应用程序打包为可展开的.cab文件.cab文件取代了Visual

Basic前面版本中的一长串的压缩文件。.ocx文件、输入文件.inf和其它的一些相关文件现在都包含在.cab文件中启动向导(续)展开将软件包发布到软盘、网络或Web媒体上管理脚本浏览、编辑或删除包装和部署向导中前面两部分创建的脚本创建一个安装程序“包类型”窗口显示了两个选项:标准安装包相关文件我们选中标准安装包来创建一个安装程序,它使用一个setup.exe来安装一个应用程序创建一个安装程序(续)创建一个安装程序(续)在“包类型”窗口中单击“下一步(Next)”按钮,接着显示的是“打包文件夹”窗口选择安装包存储的文件夹位置可以是一个本地的文件夹也可以是一个网络上的某个位置,通过选择“网络”按钮可以选择要存放的网络位置还可以选择“新建文件夹”来创建一个新的文件夹创建一个安装程序(续)创建一个安装程序(续)“包含文件”窗口给出了安装包中包含的文件的列表在这个列表中可以看到我们的程序的可执行文件和其它一些从属文件如果想添加文件,可以单击“添加”按钮创建一个安装程序(续)创建一个安装程序(续)“压缩文件选项”窗口用来指定如何根据发布程序的需要来进行压缩。多个压缩文件选项

选择合适的选项保证每个压缩文件的大小不超过计划使用的磁盘的容量创建一个安装程序(续)创建一个安装程序(续)创建一个安装程序(续)“启动菜单项”窗口用来指定应用程序在

Windows启动菜单中的位置“安装位置”窗口用来指定正常安装时各个文件的位置创建一个安装程序(续)创建一个安装程序(续)创建一个安装程序(续)“共享文件”窗口用来指定安装后哪些文件用作共享文件最后一个窗口让我们在文本框中输入名称用来保存会话设置以便将来使用创建一个安装程序(续)创建一个安装程序(续)开始展开–单击向导中的“展开”按钮可以选择是展开到一个软盘(如果前面打包选择的是压缩到多个文件),还是展开到光盘,或是发布到网络上,或是发布到Web(Web公布选项)上展开一个包展开到软盘用软盘作为发布的媒体时,程序的大小受到很大的限制因为一张高密度的软盘可以存储的内容也就是1.44MB,这就限制了程序的大小要在一张软盘的存储范围之内而且,如果对程序有了修改,则软盘需要重新创建、复制和发布要求选中的软盘驱动器是存在的优点–用来读取软盘的硬件设备几乎在每台电脑上都可以找到,另外一个好处是软盘的便携性展开方法窗口展开到光盘容量比软盘要大得多,一张光盘可以容纳600MB程序的大小不再受限制使用光盘来发布程序也很便捷光盘可以完全自启动Windows

95/98

和Windows

NT

都支持自启动的光驱只要用户把光盘放入光驱中就可以开始启动安装程序网络发布需要考虑程序的大小、网络的带宽、速度和网络连接的可靠性两种方法:第一种方法是把网络作为一种媒体用来把应用程序传输到客户端应用程序保存在服务器端,被下载并安装到客户端第二种方法是创建一个网络安装,只有很少的几个文件拷贝到客户端每当客户端执行程序时,再把必要的文件下载到客户端的RAM中网络发布(续)尽管使用基于网络的发布需要大量的网络数据传输,但是这种方法还是很有益处的因为文件是集中存放在服务器端,所以对文件做修改和更新是很容易实现的不需要象使用软盘那样多次发布在打包和展开向导中如果选择了网络发布,则安装包会拷贝到一个选中的网络环境的某个位置上文件夹窗口在Web上展开可以让我们把应用程序发布到Internet上优点:客户端不需要运行任何安装工具来把应用程序安装到本机上,只需要一个浏览器来和应用程序进行交互。省去了邮寄软盘给远程客户的手续用户不需要在安装时和多张磁盘打交道保证用户总是可以获得程序的最新版本,也就是说任何更新立即有效实现Web发布,要选中“展开方法”窗口中的“Web发布”选项在Web上展开(续)“展开项”窗口展开的附加项设置Web发布站点卸载程序Microsoft

Windows

95/98和Windows

NT要求所有在Windows操作系统中安装的应用程序都要有相应的卸载程序用户安装应用程序setup程序会把一个St6unst.exe拷贝到\Windows

或者\Winnt目录下Visual

Basic

会在应用程序的安装目录下产生一个log文件(St6unst.log)卸载程序(续).log文件中包含下面一些信息:在安装时创建的目录安装文件的所在位置创建或修改的注册表的入口Windows

创建的开始菜单的入口通过控制面板中的添加/删除程序来卸载一个应用程序Setup工具包是一个和Visual

Basic一块安装的程序,打包和展开向导在创建一个安装程序时使用到它包含有应用程序的Setup程序在把文件安装到用户的计算机上时所用到的窗体和代码打包和展开向导中包含了Setup工具包创建的setup1.exe文件Setup工具包(续)可以用来修改安装程序过程中的屏幕界面直接创建一个安装程序位于Visual

Basic

根目录下的\Wizards\PDWizard\Setup1子目录下Setup工具包(续)在安装过程中有两个setup程序:setup.exe在用户的计算机上执行预安装过程,包括安装setup1.exe和任何其它主安装程序需要的文件setup1.exe是Setup工具包自己定义的TreeView控件提供了一种通用的组织相关数据的方法把数据组织为分层的树状数据从一个根结点开始,下面是一些相关的结点每一个结点称为根结点的子结点每个子结点又可以有它自己的子结点,如此类推Windows资源管理器(TreeView的例子)TreeView控件(续)用户可以通过折叠或展开某个分支来查看感兴趣的信息使用结点的属性和事件可以对每个结点的信息进行操作使用结点可以显示图片TreeView控件(续)我们也可以使用一个复选框来让用户根据需要标记某些特殊的结点需要通过在“部件”对话框中选中选项“MicrosoftWindows

Common

Controls

6.0”才能让它在工具箱中显示属性LineStyle返回或设置在结点间显示的线的类型object.LineStyle

[=number]number参数的设置如下:tvwTreeLines对应值0,它要求显示结点到它的父结点的连线tvwRootLines对应值1,不仅要求显示结点到它的父结点的连线,而且要求显示到根结点的连线使用格式如下:Treeview1.LineStyle

=

tvwRootLines属性(续)Nodes使用下面的格式来返回到结点集合中一个结点的引用:object.Nodes可以使用标准的集合方法来处理Nodes对象(例如,Add和Remove方法)我们可以使用集合中每个元素的下标来访问元素,或者使用元素对应的唯一关键字(保存在Key属性中)来访问这个元素Nodes集合的Add方法使用格式如下:

object.Nodes.Add

(relative,relationship,

key,

text,image,selectedimage)Add方法的参数设置设置值对应值说明tvwFirst0这个结点被插入到和

relative

参数指定的结点同一级的所有结点的前面。tvwLast1这个结点被插入到和

relative

参数指定的结点同一级的所有结点的后面。一般情况下所有随后结点都是紧跟着前一个插入。tvwNext2(缺省)结点作为

relative

参数指定的结点的后一个结点插入。tvwPrevious3结点作为

relative

参数指定的结点的前一个结点插入。tvwChild4插入的结点作为

relative

参数指定的结点的一个子结点。Add方法的参数relative用来给出新结点和这个已存在结点的关系relationship按照表中所给的参数值设置新结点的相对位置key为新结点指定一个唯一的关键字text给出用来显示结点时使用的文本信息image给定在和TreeView控件相关的图片列表中一幅图片的索引值selectedimage指定一幅在图片列表中的图片的索引值,这幅图片在结点被选中时显示Node对象的属性Checked返回结点对应的复选框是否被选中object.Checked

[=

boolean]Expanded返回一个值,从这个值可以判断一个结点当前是展开的还是折叠的object.Expanded[=

boolean]Node对象的属性(续)Index用来返回或设置结点集合中结点的唯一标志object.IndexChildren返回一个结点对象包含的子结点的个数object.ChildrenNode对象的属性(续)Sorted返回或设置一个值,用来决定是否对该结点的子结点按照字母顺序进行排序也可以用来设置一个值以决定是否对一个TreeView控件的根一级的结点按照字母顺序进行排序object.Sorted

[=Boolean]布尔值参数的设置含义如下:True-按照结点的Text

属性值进行按字母顺序的排序False-不进行排序在代码中:node.Sorted

=

TrueNode对象的属性(续)Style设置TreeView控件中每个结点对相对应显示的图片的类型(图片、文本、加号/减号或者线)和文本object.Style

[=number]Number参数的每个设置值的含义如下:0–只能为文本1–可以同时设置图片和文本2–可以同时设置加号/减号和文本3–可以同时设置加号/减号、图片和文本Node对象的属性(续)4–可以同时设置线和文本5–可以同时设置线、图片和文本6–可以同时设置线、加号/减号和文本7

–(缺省)可以同时设置线、加号/减号、图片和文本–

在代码中:Treeview1.Style

=

tvwTreelinesPlusMinusTextNode对象的属性(续),则在结点旁设置复CheckBoxes决定是否在一个结点旁设置一个复选框object.CheckBoxes

[=Boolean]如果设置为

True框,否则不设置TreeView1.Checkboxes

=

True事件Expand在TreeView控件中的一个结点对象被展开时发生,也就是当它的子结点变为可见的时候发生Private

Sub

object_Expand(ByVal

node

As

Node)

这里的node指这个被展开的结点发生在Click

和DblClick

事件之后事件(续)Private

Sub

TreeView1_Expand(ByVal

Node

As

Node)If

Node.Index

<>

1

ThenNode.Expanded

=

FalseEnd

IfEnd

Sub事件(续)Collapse当TreeView

控件中的任何结点被折叠时触发Private

Sub

object_Collapse(ByVal

node

As

Node)

这儿的node参数指那个被点中的结点对象在标准Click

事件之前发生事件(续)Private

Sub

TreeView1_Collapse(ByVal

Node

As

Node)If

Node.Children

>

1

ThenNode.Expanded

=TrueEnd

IfEnd

Sub事件(续)NodeClick在一个结点对象被单击时发生Private

Sub

object_

温馨提示

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

评论

0/150

提交评论