Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-窗体/数据页

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

时 间:2022-11-04 08:58:58
作 者:麥田   ID:11  城市:上海  QQ:3002789054点击这里给麥田发消息
摘 要: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值将保持原样。



Access软件网QQ交流群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助