前言:学习任何编程语言、编程工具的目的不外乎解决生活问题,能够快速、高效解决问题的方式就是不错的方式,至于选择什么“工具”,众位看官看着办,本人虽然有过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. MapReduce中的作业调度

    MapReduce是hadoop提供一个可进行分布式计算的框架或者平台,显然这个平台是多用户的,每个合法的用户可以向这个平台提交作业,那么这就带来一个问题,就是作业调度. 任何调度策略都考虑自己平台调 ...

  2. XML 格式转JSON 格式

    #import <Foundation/Foundation.h> #pragma GCC diagnostic push #pragma GCC diagnostic ignored & ...

  3. poj 1987 树的分治

    思路:1741的A1送 1. #include<iostream> #include<cstring> #include<algorithm> #include&l ...

  4. js如何判断一个数组中是否有重复的值

    引自:http://bbs.tianya.cn/post-414-38497-1.shtml 方法一: var ary = new Array("111","22&quo ...

  5. 约瑟夫环(N个人围桌,C语言,数据结构)

    约瑟夫环问题(C语言.数据结构版) 一.问题描述 N个人围城一桌(首位相连),约定从1报数,报到数为k的人出局,然后下一位又从1开始报,以此类推.最后留下的人获胜.(有很多类似问题,如猴子选代王等等, ...

  6. Android经验之谈1

    豌豆荚等可能会导致手机网络出现问题,电话打不进来,所以需要及时卸载豌豆荚. 系统apk,不能通过在manifest.xml里面添加origin-package或者useid等来改变. 而是需要用and ...

  7. 和阿文一起学H5——H5工具、素材

    字体: 一般的H5工具都会提供一部分字体,如果提供的字体中没有自己想用的字体,可以在PPT或PS中进行加工,然后另存为图片,再导入到H5工具中去. 字全生成器: 1.http://www.diyizi ...

  8. Java Servlet-http协议

    ---恢复内容开始--- 互联网三大基石: url:定位数据 html:显示数据 http:传输数据

  9. 【SQLServer】使用T-SQL访问远程数据库:openrowset 和 openquery 以及连接服务器的创建

    █ 启用/关闭Ad Hoc Distributed QueriesAd Hoc Distributed Queries服务默认是关闭的,要使用openrowset 和 openquery访问远程数据库 ...

  10. AjaxPro使用方法

    无意中看到同事用AjaxPro用,看到很不错,特长是前后台传输数据特别方便. 最好的教材就是拿到就可以用,方便大家. 以前数据传输用FORM提交,或者在前台用JASON拼接然后通过AJAX方式提交.总 ...