说的应该是在对象操作中吧。如果稍稍注意一下的话,会发现感叹号“!”只用在集合的后边,而圆点“.”是把这个集合的集合名写了出来。比如recordset的Fields集合,TableDef的Fields等等。而且,这个集合又是前述对象的默认集合属性(默认属性:比如取textbox的值时可以不写text属性,直接写textbox名,也一样能取出值来)。

解决方案 »

  1.   

    在Visual Basic中,惊叹号“!”与圆点“.”都用于给对象命名,但两者语法上却存在很大的区别,这点在编程时尤其需要注意。
        圆点操作符“.”用来表示对象的属性和方法,在引用时,需要用到对象的Name、圆点和需要的属性或方法。例如要引用文本框Textl中的文本属性时可用reponse$=Text1.Text,再如要改变Form1窗体返回或读取对象高度的单位时用Form1.ScaleHeigh=2000表示。
        感叹号“!”常用于当一个控件作为一个特性访问的情况下,例如引用Fomr2中Text1文本框文本属性时,可采用response$=Form2!text1.text语法格式。
        虽然两者的语法应用结构有较大差异,但两条语句的性能是相同的,值得注意的是如果你在感叹号“!”的位置使用“.”可以获得对窗体上Text1特性的直接访问权,为了进一步增加感性认识,你不妨运行下面的例子来试试。
        1.建立一个新项目,并在Form1窗体中增加一个命令控件。
        2.双击Form1窗体,编辑Form-Load事件并输入:
            Form1!Command1.Caption=”Text”
            Form1.Command1.Caption=”It Works”
        3.运行试项目,这时你就会在Command1命令框中看到字符串It Works。
        为了在程序中清楚地界定引用的控件名和该控件的属性或方法,增加程序的可读性,最好使用感叹号“!”,这也是VB的推荐方式。