ACCESS文本框中的TEXT和VALUE有何区别?

这里写自定义目录标题

ACCESS文本框的VALUE属性和TEXT属性确实容易搞混。两者都是引用文本框里的内容,但是引用的时机有分别。因为引用的时机不同,同样引用文本框里的内容,这两种属性值就会有时相同,有时又不相同。
TEXT属性必须在文本框获得焦点的情况下才能引用,系统会在焦点离开文本框时将最后出现的TEXT值保存为VALUE值,焦点离开文本框后如果引用其TEXT属性就会报错。
VALUE属性则是文本框失去焦点后文本框里的值,或者文本框获得焦点时输入新值前的原有值或者说旧值。
下面例子有助于理解这两个属性的分别:
假设ACCESS窗体里有两个文本框,TEXT1和TEXT2 外加一个命令按钮COMMAND1,开始时那两个文本框内均无内容。
我们在TEXT1输入1,此时 TEXT1.Text=1 / TEXT1.Value=Null
接着在TEXT1输入2,此时 TEXT1.Text=12 / TEXT1.Value=Null
跟着在TEXT1输入3,此时 TEXT1.Text=123 / TEXT1.Value=Null
将焦点移到TEXT2,此时 TEXT1.Text=未知 / TEXT1.Value=123 (因为TEXT1已无焦点故其TEXT值未知)
再将焦点移回TEXT1,此时 TEXT1.Text=123 / TEXT1.Value=123
接着删除 TEXT1的内容,此时 TEXT1.Text=Null / TEXT1.Value=123
在TEXT1输入456,此时 TEXT1.Text=456 / TEXT1.Value=123
再将焦点移到TEXT2,此时 TEXT1.Text=未知 / TEXT1.Value=456
如果这个时候COMMAND1,单击事件过程为
Private Sub Command1_Click()
MsgBox Text1.Value '引用Value属性
End Sub
那么此时将弹出消息框,显示“456”
如果单击事件过程为
Private Sub Command1_Click()
MsgBox Text1.Text '引用Text属性
End Sub
那么这时系统就会报错,因为此时焦点在命令按钮上,不能引用TEXT1的TEXT属性。

大多数情况下,特别是文本框没有焦点时,引用文本框内容应使用VALUE属性,在文本框获得焦点的情况下我们则可以引用TEXT属性,以反映文本框内容的最新情况。例如,下列TEXT1的更改事件过程就可以实现在TEXT1里输入什么字符,TEXT2随即显示什么字符:
Private Sub Text1_Change()
TEXT2.Value = Text1.Text '引用Text属性
End Sub
注意:如果上述代码引用VALUE属性,则没有TEXT2显示的内容随TEXT1变化而变化的效果,因为文本框丧失焦点前其Value值将保持原样。

文献来源:http://club.excelhome.net/thread-955107-1-1.html

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值