分享

VB编程步步高-杂类篇(一)

 随波逐流S 2012-02-29

VB编程步步高-杂类篇(一)

作 者 : 甘冀平

   原文出处:http://www./tips13.htm

   按照百分秒格式显示时间

   你可以编写下面的代码来显示时间,其中包括百分秒格式:

   txt = Format$(Time, "hh:mm:ss") & Format$(Timer - Fix(Timer), ".00")

   注意:Timer函数不能显示百分秒格式的时间,它只能精确到50毫秒。

   简易安装注册表项目

   这里有一个安装程序时设置注册表项目的简单方法。首先,在机器上手工创建一个项目,比尽可能地将之放在所属的子路径下面。然后,使用注册表编辑器输出这个包含项目的子路径,这就会创建一个.REG文件。最后,将这个文件打包在安装向导程序中。这样做后,当进行安装时,安装向导程序就可以自动地完成注册表项目的创建了。

   快速获取ASCII码

   你是否经常要获取一个字符的ASCII码数值?下面告诉你一个简单方法:

   1、在VB编程主窗口中,选择菜单“视图”,再点击“立即窗口”,或者直接按“CTRL+G”,在屏幕底部就显示出“立即窗口”。

   2、在立即窗口中,输入?asc("b"),然后回车,就可以得到字符b的ascii码数值98了。又比如,想得到双引号的ascii码数值,请输入?asc(""""),得到34。

   创建新的工程模板文件

   当在VB中选择文件新建工程命令后,就出现了一个包含多个模板的选择窗口。你知道吗?你可以非常简单地创建一个新的模板文件!

   首先,按照你需要的形式,创建一个新工程。添加控件、工具条、表单,编写模块与子程序,就象编写其他的工程文件时做你愿意做的事情。

   接着,将工程保存到工程目录。我不能确认在其他系统中这个工程目录位于何处,在我的系统中(WindowsNT/VB6),这个目录是:

   C:Program FilesMicrosoft Visual StudioVb98TemplateProjects

   就保存到这里!给出一个富有含义的名字。现在,当你从文件菜单中选择新建工程时,就可以看到你刚刚建立的新模板了。

   创建帮助文件

   通常这是一个非常困难的话题。帮助编辑器是Visual Basic系统自带的,你可以在Visual Basic光盘的ToolsHcw或者CommonToolsHcw目录下找到它。

   首先,创建一个包含帮助内容的主题文件。你要使用一套神秘的由Microsoft定义的脚注来指示链接、主题标题以及索引项目。然后,以RTF(Rich Text Format)格式保存,这种格式被包括Word在内的许多高级编辑器所支持。

   接着,创建一个工程文件,其中定义一些主题数目,并定义了帮助源文件。然后,启动帮助编辑器来创建最后的.HLP文件。

   最后,在你的程序中可以使用CommonDialog控件的ShowHelp方法来显示帮助文件。这里有一个例子程序,它的网络路径是:http://www./HowToBeg.htm,出现这个页面后,再点击链接Implement standard File and Help menu commands。

   总之,创建帮助文件非常困难。帮助文件编译器本身的用户界面不很友好,而且运行很慢,特别对于大的帮助文件。如果编译过程中出现错误,编译器也不能提供足够的信息。做为替代工具,许多第3方软件能做得更好些。

   你也许同时考虑到HTML形式的帮助文件,微软公司正准备在将来采取这个方法。然而,这并非意味着传统的帮助不再有用。


VB编程步步高-杂类篇(二)

作 者 : 甘冀平

   Null, Empty, Nothing, and vbNullString的区别

   以上这些奇怪的数值间有些微妙的不同含义:

   Null:Null是一个象Integer或者String一样的变量类型,它表示一个没有合法数据的变量。这有别于zero、Nothing、Empty或者vbNullString。许多数值与Null结合在一起,都将产生Null结果。比如:

   表达式 结果
Null - Null Null
Null + 7  7
Null = Null Null

   你可以使用IsNull语句来判断表达式是否为Null:

   If IsNull(my_variable) Then ...

   Empty:这也是一个象Integer或者String一样的变量类型,它表示了一个还没有进行初始化的变量。它与Null的意义不同,Null表示没有合法数据。

   一个没有初始化的变量的数值是Empty。你可以使用IsEmpty语句来判断是否变量进行了初始化:

   If IsEmpty(my_variant) Then ...

   Nothing:这是一个指向空对象的对象引用。将对象引用设置为Nothing,就释放了那个对象。如果没有其他的引用指向对象,Visual Basic就将销毁这个对象。

   Dim obj As Form1
   :
   Set obj = Nothing 注释: Free the object reference.

   使用Is Nothing语句来判断是否一个引用为Nothing:

   If obj Is Nothing Then ...

   vbNullString:这是个常量,表示一个empty字符串。它与空白字符串""不同,表示什么也没有的字符串(nothing string)。对于许多场合,它被当作一个empty字符串""处理,真正使用它的目的是传递null参数给库函数。

   Null是一个很奇怪的数值,它不是zero,不是Nothing,不是vbNullString。它是没有定义的东西。

   判断字符串是否为空白

   有以下几种方法判断一个字符串是否为空白:

    Dim txt As String
    Dim blank As String

        blank = ""
            :
        If Len(txt) = 0 Then ...
        If txt = vbNullString Then ...
        If txt = "" Then ...
        If txt = blank Then ...

   经过测试,Len(txt)=0的方法要比其他方法快20%多。

   从字符串尾部搜索匹配子串

   在Visual Basic 版本6中,可以使用InStrRev函数实现从字符串尾部搜索匹配子串的功能。在早期的版本中,没有这个函数,做为替换,请使用下面的代码:

    Function LastInStr(txt As String, pattern As String)
    Dim pos1 As Integer
    Dim pos2 As Integer

        pos2 = 0
        Do
            pos1 = pos2
            pos2 = InStr(pos1 + 1, txt, pattern)
        Loop While pos2 > 0
        LastInStr = pos1
    End Function
-
 
 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多