在做学生信息管理系统的时候,遇到了一条代码。

txtName.Text = mrc!student_Name

txtResult.Text = mrc!result

代码本身理解没有问题,给文本框添加内容,但是里面的"!"让我蒙圈了。

第一次看见这样写的代码,不明白有什么作用,但感觉它和  "."有点关系。

去网上搜索了一番,

!   表示从"!"前面的记录集中取出"!" 后面指定的字段的值

mrc!result = mrc.fields("result"),  即 txtName.Text = mrc.Fields(1)

因为field的默认属性是value,所以也就等于mrc.field("result").value

这是数据库遇到的例子

但是"!" 和"."到底有什么区别呢?

使用方法方面

.的使用方法有两种形式:

控件.属性(后者是前者的属性)

控件.控件(前者是后者的容器)

而!仅有一种形式:

控件!控件(前者是后者的容器)

另外,圆点操作符"."用来表示对象的属性和方法,在引用时,需要用到对象的Name、圆点和需要的属性或方法。例如要引用文本框Textl中的文本属性时可用reponse$=Text1.Text,再如要改变Form1窗体,返回或读取对象高度的单位时用Form1.ScaleHeigh=2000表示。

感叹号"!" 常用于当一个控件作为一个特性访问的情况下,例如引用Fomr2中Text1文本框文本属性时,可采用response$=Form2!text1.text语法格式。

虽然两者的语法应用结构有较大差异,但两条语句的性能是相同的,值得注意的是如果你在感叹号"!" 的位置使用"."可以获得对窗体上Text1特性的直接访问权。

为了在程序中清楚地界定引用的控件名和该控件的属性或方法,增加程序的可读性,最好使用感叹号"!" ,这也是VB的推荐方式。

VB--"." 和 "!" ?的更多相关文章

  1. [转载]C#中MessageBox.Show用法以及VB.NET中MsgBox用法

    一.C#中MessageBox.Show用法 MessageBox.Show (String) 显示具有指定文本的消息框. 由 .NET Compact Framework 支持. MessageBo ...

  2. VB.NET设置控件和窗体的显示级别

    前言:在用VB.NET开发射频检测系统ADS时,当激活已存在的目标MDI子窗体时,被其他子窗体遮住了,导致目标MDI子窗体不能显示. 这个问题怎么解决呢?网上看到一篇帖子VB.NET设置控件和窗体的显 ...

  3. 用VB脚本批到导入字段到PowerDesigner

    在PowerDesigner使用脚本批量导入excel中记录的表结构信息,由于需要通过powerdesigner逆向工程创建一些sybase IQ的表,由于是接口数据,只有excel表,手动导入太耗时 ...

  4. C#/VB.NET Excel数据分列

    C#/VB.NET Excel数据分列 有时候我们需要将保存在Excel单元格中的组合型数据拆分为多列(如将全名拆分为姓和名两列)以方便我们处理.记忆或保存.为了避免重复和大量的手动输入工作,Exce ...

  5. VB编程的键盘控制

    在VB中,很多控件都提供了键盘输入功能(如文本框.组合框等),但它们对键盘的处理较简单,遇到复杂一点的要求即无能为力. 因而VB提供了KeyPress.KeyUp.KeyDown三种键盘事件,当用户按 ...

  6. VB常用字符串操作函数

    1. ASC(X),Chr(X):转换字符字符码 [格式]: P=Asc(X) 返回字符串X的第一个字符的字符码 P=Chr(X) 返回字符码等于X的字符 [范例]: (1)P=Chr(65) ‘ 输 ...

  7. VB操作EXCEL文件

    用VB操作Excel(VB6.0)(整理) 首先创建Excel对象,使用ComObj:Dim ExcelID as Excel.ApplicationSet ExcelID as new Excel. ...

  8. VB中PictureBox控件使用教程

    PictureBox对象可以说是任何对象的原始型态,它可以加载图片.显示文字.画图外,它还能与Frame对象一样,在自己本身里头加载其它的对象而自成一个小群组,用PictureBox可以仿真出任何对象 ...

  9. VB.NET操作Excel

    VB.NET操作Excel的基本方法与例子:

  10. 转:Delphi的类与继承(VB与delphi比较)

    既然已经做出了com程序用delphi来开发的决定,那当然就要对delphi进行一些深入的了解.有人说delphi是一个用控件堆砌起来的工具,和vb没什么两样:也有人说dephi实际上是面向过程的,他 ...

随机推荐

  1. hadoop环境安装及错误总结

    历时N天的hadoop环境,终于配好了 主要参考 Hadoop集群安装配置教程_Hadoop2.6.0_Ubuntu/CentOS 1.开机默认进入字符界面或者是图形界面:http://blog.cs ...

  2. oracle chr(38) 和 ascii('&') 函数

    oracle chr(38) 和 ascii('&') 函数 select chr(38) from dual; select ascii('&') from dual;

  3. 抓包分析LVS-NAT中出现的SYN_RECV

    CIP:192.168.10.193 VIP:192.168.10.152:8000 DIP:100.10.8.152:8000 RIP:100.10.8.101:8000 和 100.10.8.10 ...

  4. 前端获取Base64字符串格式图片Ajax到后端处理

    前端获取到的Base64字符串格式图片一般都是经过处理的图片,例如:裁剪过后的,这里假设data为获取到的Base64字符串格式图片 Base64格式图片的格式为 “data:image/png;ba ...

  5. hdu 1114 dp动规 Piggy-Bank

    Piggy-Bank Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit S ...

  6. [BZOJ4826][HNOI2017]影魔(主席树)

    4826: [Hnoi2017]影魔 Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 669  Solved: 384[Submit][Status][ ...

  7. 【20181027T2】易水决【贪心+堆】

    原题:loj6035 [错解] 全肝T1了没怎么想 [正解] 一眼贪心 先考虑\(b_i=0\)怎么做 可以模拟一个正常人的思维 开一个堆,记录每个任务需要的时间(包括等待),每次从中取出一个任务,表 ...

  8. Java并发(十四):并发工具类——CountDownLatch

    先做总结: 1.CountDownLatch 是什么? CountDownLatch 允许一个或多个线程等待其他线程(不一定是线程,某个操作)完成之后再执行. CountDownLatch的构造函数接 ...

  9. redisson实现基于业务的互斥锁

    虽然数据库有锁的实现,但是有时候对于数据的操作更需要业务层控制. 这个解决的问题有次面试被问到过,当时不知道怎么解决,乱说一通,今天也算是有个解决方案了 项目中有个需求,就是订单需要经过一层一层的审核 ...

  10. bzoj 3772

    感觉做这种题收获很大. 1.DFS序(广义上)除了用于静态子树操作,也可以用来做点到根的路上某些信息的统计(如点到根的路径上标记了多少个点),如果在加上lca,就可以支持路径的信息查询. 2.树上的可 ...