您的位置:首页 > 移动开发

VB APP对象属性一览表+灵活使用VB的APP对象

2012-12-29 11:19 225 查看

VB APP对象属性一览表+灵活使用VB的APP对象

2010-10-15 08:18:44| 分类:
Vb
| 标签:
|字号大中小 订阅

●适用于VB

●用法:传回值 = App.属性

--------------------------------------------------------------------------------

○VB:

●得知程序的说明

字符串 = App.Comments

●得知程序的公司名称

字符串 = App.CompanyName

●得知程序的原始名称

字符串 = App.EXEName

●得知程序的文件描述

字符串 = App.FileDescription

●得知程序的说明文件名称

字符串 = App.HelpFile

●得知程序的版权

字符串 = App.LegalCopyright

●得知程序的商标

字符串 = App.LegalTrademarks

●得知程序的版本

字符串 = App.Major

字符串 = App.Minor

●得知程序的路径

字符串 = App.Path

●得知程序是否重覆执行。

If App.PrevInstance Then

MsgBox "程序不得重覆执行", vbokonly '值为Tr时,程序重覆执行

End

Else

MsgBox "程序第一次执行", vbokonly

End If

●得知程序的产品名称

字符串 = App.Prod tName

===============================================

灵活使用vb的app对象:

在vis l basic 的编程实践中,app 是非常重要的全局对象。合理使用该对象开发程序可以大大节约开发时间,并且能实现用其他方法很难达到的目标。下面便是作者在用vis l basic 开发应用程序时得到的一些技巧和体会。

一、避免重复运行同一个程序实例

app 对象的previnstance 属性返回一个逻辑值,该值指示是否已经有前一个应用程序实例在运行。有时我们开发的程序每次只想运行一个实例,当用户重复运行该程序时,能提醒用户该程序已经运行,并自动退出。要实现上述功能,只需在应用程序中添加一个模块,在该模块中加入启动过程s main,将如下代码加到s main 中即可。

if app.previnstance then

msg = " 系统正在运行,请在下面任务栏寻找系统的最小化图标。"

style = vbokonly + vbexclamation + vbdefaultbutton2

title = "警告!"

response = msgbox(msg, style, title)

exit s "结束本次运行

end if

二、在系统任务列表中隐藏应用程序

app 对象的t a s k v i s i b l e 属性返回或设置一个值(boolean 布尔表达式的值),用来确定应用程序是否出现在系统任务列表中。缺省值为tr,表示应用程序出现在任务列表窗口中;若设置为false,则应用程序不出现在任务列表窗口中。利用该属性可以使应用程序的标题不出现在alt+ctrl+del 弹出的任务列表窗口中,从而避免应用程序被用户强行终止。

注意:应用程序启动并显示其界面后,taskvisible 属性就会被自动设置为默认值tr。另外,可以通过设置title属性来改变应用程序在任务列表窗口显示的名称,否则将显示工程名。举个例子:在 form上建立一个commandbutton控件command1,加入如下代码:

private s form_load()

app.title = "这是一个演示如何隐藏应用程序的示例"
end s

private s command1_click()

if app.taskvisible then

app.taskvisible = false

else

app.taskvisible = tr

end if

end s

运行该程序,并用alt+ctrl+del 弹出任务列表窗口观察,然后不断点击command1,看有何变化。

三、实现与具体路径无关的应用程序

开发程序时往往希望程序无论copy 到哪个目录下都能正常运行,也就是程序与具体的应用程序所在的路径无关。你可以这样做:在应用程序中添加一个模块,在该模块中加入启动过程s main,将如下代码加到模块中。

p lic mypass as string "声明为全局变量

s main()

mypath = app.path

.. "其余程序部分

..

end s

在程序中凡是涉及到路径的地方,用mypath 代替绝对路径。例如:假设需要通过data 控件data1 来操作应用程序目录下的localdatabase 子目录下的user.mdb,user.mdb 包含有test 表。将如下代码加入该控件所在的form的load事件中,就可实现对user.mdb 的操作与绝对路径无关。

data1.databasename = mypath + "\localdatabase\user.mdb"

data1.recordsource = "select * from test"

data1.refresh

四、应用程序的版本管理

与应用程序版本有关的属性有:revision 属性、major属性、minor 属性。revision 属性返回工程的修订版本号,该属性在运行时是只读的;major 属性返回工程的主版本号,该属性在运行时是只读的;minor 属性返回工程的小版本号,该属性在运行时是只读的。要设置工程的有关版本,可以在设计时用位于“工程属性”对话框中的“生成”选项卡上相对应的框设置这些属性。

“修订版本号”反应的是对工程的修改信息,如果将“工程属性”对话框中的“生成”选项设置为“自动加”,则每当工程编译一次(编译为.exe 文件),revision 属性的值自动累加1。而major 属性、minor 属性才是我们通常提到的应用软件的版本。例如要设置软件的版本号为3.4,只需在工程设计时,将major 属性设置为3,minor 属性设置为4。软件运行时如果要显示版本号,可参考如下语句:msgbox "系统版本为:"+str(app.major) + "." + trim(str(app.minor))运行该语句,将弹出一消息对话框显示“系统版本为:3.4”。

五、应用程序的日志操作

a p p 对象支持应用程序日志的操作,与此相关的有logmode 属性、l o g p a t h 属性、l o g e v e n t 方法和startlogging 方法。下面说说这些属性和方法的功能及日志操作的步骤。

1.首先用startlogging方法对某个操作的日志目标及日志模式进行设置。

语法格式:app.startlogging logtarget, logmodelogtarget 是一个字符串,用于指定一个用于记录日志的文件名。logmode 是一个整数值,它决定如何记入日志,一般将其置为vblogauto。另外,logpath 属性、logmode 属性在设计阶段不可用,且在运行阶段为只读,因此不能直接对这两个属性进行赋值,只能通过startlogging 方法改变。

2 . 用l o g e v e n t 方法把某个事件记入日志。在windowsnt 平台上,该方法会把内容写到nt 的event 日志中。在windows9x平台上,该方法会把内容写到logpath属性指定的文件中。按照缺省规定,如果不指定文件,事件将被写入 vbevents.log 文件中。

语法格式:app.logevent logb?r, eventtype

其中:logb?r 是要写入到日志中的信息;eventtype是可选的,它指定了事件的类型。下面是eventtype 的设置值:

常量名常数值描述

vblogeventtypeerror 1 错误

vblogeventtypewarning 2 警告

vblogeventtypeinformation 4 信息

3 . 程序运行过程中如果需要了解日志文件路径及文件名、日志写入模式,你可以读取logmode 属性和logpath属性的值。下面是一个简单的程序示例:

app.startlogging app.path + "\mylog.log", vblogauto

app.logevent "一切正常", vblogeventtypeinformation

msgbox app.logpath

msgbox app.logmode

需要注意的是,对日志操作的方法和属性只有在程序被编译为exe 文件后才能发挥作用,在vis l basic 调试环境下无效。

为了您的安全,请只打开来源可靠的网址
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐