vb中的text文本框中(空的)回车一下,相当于chr(13) chr(10)啊,即vbCrLf。而不仅仅是chr(13),vbCr呢 10

vb中的text文本框中(空的)回车一下,相当于chr(13)chr(10)啊,即vbCrLf。而不仅仅是chr(13),vbCr呢... vb中的text文本框中(空的)回车一下,相当于chr(13) chr(10)啊,即vbCrLf。而不仅仅是chr(13),vbCr呢 展开
 我来答
tianqing20wen

2015-04-15 · TA获得超过2.4万个赞
知道大有可为答主
回答量:8226
采纳率:88%
帮助的人:5105万
展开全部
回车就是光标回到行首,换行光标下移一行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mr_shj
2015-04-15 · TA获得超过2682个赞
知道大有可为答主
回答量:1665
采纳率:94%
帮助的人:1381万
展开全部
vbCr 即 chr(13)
追问
为什么回车一下,text中text不是vbcr而是vbcrlf
追答
这是与老设备兼容导致的后果,键盘最初设置是与打字机一脉相承,打字机打完一行字就得手动回车再换行,在后来设计的操作系统中chr(13)是回车,而chr(10)是换行。
为了和老设备兼容,就产生了你的疑问。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
网海1书生
科技发烧友

2015-04-15 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26228

向TA提问 私信TA
展开全部
键盘上的回车键(Enter)的虚拟键值为13(即16进制的0D,也即vbCr),所以当按下回车键时,软件所接收到就是vbCr,后面的换行符(ASCII码10,即16进制的0A,也即vbLf)是操作系统自己添加上去的。为什么会这样呢?这要从计算机诞生之初说起:
大家肯定都知道,计算机的键盘是直接来源于PC诞生之前的电传打字机,而电传打字机在打完一行字要换行时,要执行两个动作:先是把打印头返回到本行的开头位置(即“回车”的意思),接着再把纸张上移一行的位置(即“换行”的意思),合起来就是“回车换行”了。当打字机的键盘移植到电脑键盘上时,也完整复制了这种“回车换行”的模式,因此电脑上的文本中也是用两个字符(即Chr(13)和Chr(10),或者用常数表示就是vbCrLf)来作为换行标志的。但是,PC刚出生时,存储器的价格不菲,用两个字符来表示换行显得有点奢侈,因此电脑操作系统的开发者们在这个问题上产生了意见分数裤歧。这也就是为薯迹简什么州渗在不同的操作系统中文本换行的字符是不同的:
Dos/Windows 系统:用回车+换行表示,即vbCrLf
Unix/Linux 系统:用回车表示,即vbCr
Mac 系统:用换行表示,即vbLf
键盘中的每个键从物理角度而言每次是只能发送一个键的(比如回车键就是vbCr),不会直接发送两个字符(比如vbCrLf)的,但你也不用为此操心,操作系统会自动帮你处理的。不过如果是用程序来检测按回车键后发送的键值,也只需要检测vbCr(即ASCII码13)即可,用vbCrLf是检测不到的!
追问
不过我在VB中用程序检测到的回车键后发送的键值就是vbCrLf  ,而不是vbCr
追答
你不要去检测文本框中已有的字符(那是已经处理过后的),而是通过KeyPress、KeyDown或KeyUp事件去获取。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式