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

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. GUC-4 CopyOnWriteArrayList/CopyOnWriteArraySet

    /* * CopyOnWriteArrayList/CopyOnWriteArraySet : “写入并复制” * 注意:添加操作多时,效率低,因为每次添加时都会进行复制,开销非常的大.并发迭代操作多 ...

  2. Yii 简明学习教程

    Yii是一个基于组件的高性能PHP框架,用于快速开发Web应用程序(下面内容基于Yii 1.1) 1. 典型的工作流 用户向入口脚本index.php发起请求 入口脚本加载应用配置config.php ...

  3. C语言的第一天

    代码根本C语言(我不知道这句话,严不严谨) 2019年4月30日(day01) 软件Code::blocks #include <stdio.h> //导入标准的io库 #include ...

  4. spring_150906_sqlmapclientdaosupport_getSqlMapClientTemplate

    添加到ibatis相关jar包! 实体类: package com.spring.model; public class DogPet { private int id; private String ...

  5. Codeforces Round #278 (Div. 1) B - Strip dp+st表+单调队列

    B - Strip 思路:简单dp,用st表+单调队列维护一下. #include<bits/stdc++.h> #define LL long long #define fi first ...

  6. PHP获取以为数组中的最大值和最小值

    1.PHP获取一维数组中的最大值 <?php $a=array('1','3','55','99'); $pos = array_search(max($a), $a); echo $a[$po ...

  7. centos7 默认进入系统命令行模式修改

    systemctl get-default  #查看系统启动进入默认模式 systemctl set-default graphical.target #改成默认进入 图形界面模式 systemctl ...

  8. 为什么我喜欢Java

    我现在的老板使用一个在线测试系统来筛选在线申请职位的求职者.测试的第一个问题很浅显,仅仅是为了让求职者熟悉一下这个系统的提交和测试代码的流程.问题是这样的,写一个将标准输入拷贝到标准输出的流程.求职者 ...

  9. 【BZOJ 3456】 3456: 城市规划 (NTT+多项式求逆)

    3456: 城市规划 Time Limit: 40 Sec  Memory Limit: 256 MBSubmit: 658  Solved: 364 Description 刚刚解决完电力网络的问题 ...

  10. 【动态规划/多重背包问题】POJ2392-Space Elevator

    方法同POJ1014-Dividing,唯一不同点在于每一种block有最大限定高度a,故要以a为关键字进行排序,使得最大高度小的在前,否则最大高度小的再后可能放不上去. #include<io ...