前言:学习任何编程语言、编程工具的目的不外乎解决生活问题,能够快速、高效解决问题的方式就是不错的方式,至于选择什么“工具”,众位看官看着办,本人虽然有过3年vb开发经验,但是一直没有深入学习,现已购买 《张宁著 老兵新传  核心编程及通用模块开发》,深入学习vb开发,继续将vb发扬光大。

一、知识准备

   本章从API函数开始介绍vb下如何使用api函数,模块、类模块的编写。主要还是阐述的一种思想,通用模块开发,编写的模块能够通用,多次使用,尽量要降低错误,以达到重复利用目的,从通篇介绍来看,以后还是可以将不错的模块全部类模块化,调用也方便,使用更便捷。
   编程风格总结:
   1、标准命名肯定是要遵守的,基本上都是匈牙利命名法吧,例如cmd_Print,strTmp,intValue等。
   2、变量使用一定要定义(option explicit),另外少用站16字节的variant类型。
   3、代码格式化用格式化工具随时格式化。
   4、用好with end with ,不用的代价是系统资源开销大。另外还可以这样用:
      dim objText1 as TextBox
      set objText1 = Text1
      objText1.Text = "测试程序"
      objText1.Enabled = 1 
      objText1.SelStart = 0
    示例:
      dim lsItem as ListItem
      with ListView1
            .View = lvwReport
            set lsItem = .ListItems.Add(,"L1","Text1")
            lsItem.ToolTipText = "ToolTip1"
            lsItem.SubItems(1) = "Sub1_1"
            lsItem.SubItems(2) = "Sbb2_2"
            lsItem.Selected = 1
            set LsItem = Nothing
       End With
    另外注意with end with 中最好不用goto语句跳转。
    5、布尔值判断。If Check1.checked then Text1.Text = "患者姓名" 因为非0值都表示为真,只有0才表示为假。假=0 真=-1
    6、字符串为空判断。If Len(strTmp) = 0 then exit sub 
    7、能用常量就不要用函数求值,例如:If strKey = vbcrlf then strText = "通过"  ,vbcrlf = chr$(13) + chr$(10)
    8、数组下标从1开始,0可以定义为出错代码,这个经验很少遇到,可以看看是否有好处!!!
    9、用Optional选项定义函数的参数,达到“重载”目的,同一个函数可以传不同的数据参数,这个也少遇到,需要多看看。另外一旦用了Optional后续定义参数都需要用它。实例:public function Getvalue(str1 as string,Optional byval str2 as string ,Optional byval str3 as string) 
    10、ActiveX控件都是封装api的,多熟悉api,减少对activex的使用。
    11、条件编译,好处是编译的文件小,很少遇到!!!
    12、善用MSDN,主要了解Windows的运行机制、运行原理,查找API函数定义等,另外借助c++头文件查找。
    
  本章大体这些,经验不多,4、5、6这几条以后的编程中还是要多注意!
 
 
 
 
    
    

    

VB 核心编程及通用模块开发 笔记1的更多相关文章

  1. python核心编程-第四章-个人笔记

    1.所有的python对象都拥有三个特性: ①身份:每个对象都有唯一的身份标识自己,可用内建函数id()来得到.基本不会用到,不用太关心 >>> a = 2 >>> ...

  2. python核心编程-第三章-个人笔记

    1.语句和语法 (1)反斜杠"\"表示语句继续.python良好的编程习惯是一行最后不超过80个字符,一行字符过多时便须用到反斜杠换行继续该语句. PS:在使用小括号.中括号.大括 ...

  3. python核心编程-第五章-个人笔记

    1.用del删除对对象的引用 >>> a = 123 >>> a 123 >>> del a >>> a Traceback ( ...

  4. JavaWeb核心编程之使用Eclipse开发JavaWEB项目

    文章目录 1.eclipse切换到javaee项目 2.创建服务器(如果没有server选项, 怎么做) 3.定制新建面板内容 4.创建动态web工程 1.eclipse切换到javaee项目 如图 ...

  5. MFRC522模块开发笔记

    Write_to_Card(-)和Read_from_Card(-)可谓是所有函数的终点,而SPIWriteByte(-)则是最底层对MFRC522模块进行操作的函数,所有函数都是为了Write_to ...

  6. EC20 minipcie版4g模块开发笔记

    插在电脑上实验时若出现 AT+CREG? +CREG: 0,2 可能是usb口供电不足所致,换至主机箱后面usb口后问题解决,返回值+CREG: 0,1

  7. 【转】Android开发笔记(序)写在前面的目录

    原文:http://blog.csdn.net/aqi00/article/details/50012511 知识点分类 一方面写写自己走过的弯路掉进去的坑,避免以后再犯:另一方面希望通过分享自己的经 ...

  8. python核心编程第二版笔记

    python核心编程第二版笔记由网友提供:open168 python核心编程--笔记(很详细,建议收藏) 解释器options:1.1 –d   提供调试输出1.2 –O   生成优化的字节码(生成 ...

  9. python核心编程--笔记

    python核心编程--笔记 的解释器options: 1.1 –d   提供调试输出 1.2 –O   生成优化的字节码(生成.pyo文件) 1.3 –S   不导入site模块以在启动时查找pyt ...

随机推荐

  1. 实验-hadoop新增节点

    关于hadoop新增节点网上的说法都有些差别,自己来实践一把 1.建立一个namenode一个datanode的集群 master:192.168.126.130 slave1:192.168.126 ...

  2. 使用JS制作一个鼠标可拖的DIV(三)——移动带图片DIV

    当DIV元素里,存在图片元素的时候,会使拖动出现异常. 因为图片元素本身就支持拖动,所以,只要在图片标签加入:draggable='false'. 如下: <div onmousedown=&q ...

  3. Android(java)学习笔记69:JDK5之后的Lock锁的概述和使用

    1. Lock锁的概述: java.util.concurrent.locks,接口Lock 首先Lock是一个接口,Lock实现提供了比使用synchronized方法 和 同步代码块更为广泛的锁定 ...

  4. iOS之Storyboard References

    如果你曾经使用 interface builder 创建过一个复杂.界面非常多的应用,你就会明白最后那些Storyboards 文件变的有多大.他会迅速变的无法管理,阻碍你的进度.自从引入 Story ...

  5. 为Google Reader守夜。。。

    Google的阅读器快要关闭了... 立刻截图留恋呢,以后就没机会了. 唉,真是令人惋惜. 虽然我接触Google Reader还不到一年,但是我已经习惯当连上WiFi时马上更新一下手机上的gRead ...

  6. 根据url获取网页内容

    PrintWriter out = null; out = response.getWriter(); try{ URL getUrl = new URL("http://www.kuaid ...

  7. GDB调试器简介

     Linux系统中包含了GNU 调试程序gdb,它是一个用来调试C和 C++ 程序的调试器.可以使程序开发者在程序运行时观察程序的内部结构和内存的使用情况. GDB提供了一下一些功能: (1)监视程序 ...

  8. hdu 4284 深度优先搜索

    思路:就是找能走的走,遍历一边所有情况,满足就退出. Accepted 4284 328MS 2280K 2239 B C++ //#pragma comment(linker, "/STA ...

  9. PowerShell 解锁使用浏览器下载的文件

    1 dir *.* -Recurse | Unblock-File

  10. 关于oracle误删数据的恢复

    与数据打交道,免不了会误删一些数据,之后还commit了,连回滚的机会都没了,而更糟糕的是你又没有备份,这种事终于在今天被我不幸的遇上了... 唯一一点值得欣慰的是,我删除表记录的时候,时间不长,一天 ...